You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
Merge branch 'linus' into x86/core
Conflicts: arch/x86/mm/ioremap.c Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -148,9 +148,9 @@ tcp_available_congestion_control - STRING
|
|||||||
but not loaded.
|
but not loaded.
|
||||||
|
|
||||||
tcp_base_mss - INTEGER
|
tcp_base_mss - INTEGER
|
||||||
The initial value of search_low to be used by Packetization Layer
|
The initial value of search_low to be used by the packetization layer
|
||||||
Path MTU Discovery (MTU probing). If MTU probing is enabled,
|
Path MTU discovery (MTU probing). If MTU probing is enabled,
|
||||||
this is the inital MSS used by the connection.
|
this is the initial MSS used by the connection.
|
||||||
|
|
||||||
tcp_congestion_control - STRING
|
tcp_congestion_control - STRING
|
||||||
Set the congestion control algorithm to be used for new
|
Set the congestion control algorithm to be used for new
|
||||||
@@ -185,10 +185,9 @@ tcp_frto - INTEGER
|
|||||||
timeouts. It is particularly beneficial in wireless environments
|
timeouts. It is particularly beneficial in wireless environments
|
||||||
where packet loss is typically due to random radio interference
|
where packet loss is typically due to random radio interference
|
||||||
rather than intermediate router congestion. F-RTO is sender-side
|
rather than intermediate router congestion. F-RTO is sender-side
|
||||||
only modification. Therefore it does not require any support from
|
only modification. Therefore it does not require any support from
|
||||||
the peer, but in a typical case, however, where wireless link is
|
the peer.
|
||||||
the local access link and most of the data flows downlink, the
|
|
||||||
faraway servers should have F-RTO enabled to take advantage of it.
|
|
||||||
If set to 1, basic version is enabled. 2 enables SACK enhanced
|
If set to 1, basic version is enabled. 2 enables SACK enhanced
|
||||||
F-RTO if flow uses SACK. The basic version can be used also when
|
F-RTO if flow uses SACK. The basic version can be used also when
|
||||||
SACK is in use though scenario(s) with it exists where F-RTO
|
SACK is in use though scenario(s) with it exists where F-RTO
|
||||||
@@ -276,7 +275,7 @@ tcp_mem - vector of 3 INTEGERs: min, pressure, max
|
|||||||
memory.
|
memory.
|
||||||
|
|
||||||
tcp_moderate_rcvbuf - BOOLEAN
|
tcp_moderate_rcvbuf - BOOLEAN
|
||||||
If set, TCP performs receive buffer autotuning, attempting to
|
If set, TCP performs receive buffer auto-tuning, attempting to
|
||||||
automatically size the buffer (no greater than tcp_rmem[2]) to
|
automatically size the buffer (no greater than tcp_rmem[2]) to
|
||||||
match the size required by the path for full throughput. Enabled by
|
match the size required by the path for full throughput. Enabled by
|
||||||
default.
|
default.
|
||||||
@@ -336,7 +335,7 @@ tcp_rmem - vector of 3 INTEGERs: min, default, max
|
|||||||
pressure.
|
pressure.
|
||||||
Default: 8K
|
Default: 8K
|
||||||
|
|
||||||
default: default size of receive buffer used by TCP sockets.
|
default: initial size of receive buffer used by TCP sockets.
|
||||||
This value overrides net.core.rmem_default used by other protocols.
|
This value overrides net.core.rmem_default used by other protocols.
|
||||||
Default: 87380 bytes. This value results in window of 65535 with
|
Default: 87380 bytes. This value results in window of 65535 with
|
||||||
default setting of tcp_adv_win_scale and tcp_app_win:0 and a bit
|
default setting of tcp_adv_win_scale and tcp_app_win:0 and a bit
|
||||||
@@ -344,8 +343,10 @@ tcp_rmem - vector of 3 INTEGERs: min, default, max
|
|||||||
|
|
||||||
max: maximal size of receive buffer allowed for automatically
|
max: maximal size of receive buffer allowed for automatically
|
||||||
selected receiver buffers for TCP socket. This value does not override
|
selected receiver buffers for TCP socket. This value does not override
|
||||||
net.core.rmem_max, "static" selection via SO_RCVBUF does not use this.
|
net.core.rmem_max. Calling setsockopt() with SO_RCVBUF disables
|
||||||
Default: 87380*2 bytes.
|
automatic tuning of that socket's receive buffer size, in which
|
||||||
|
case this value is ignored.
|
||||||
|
Default: between 87380B and 4MB, depending on RAM size.
|
||||||
|
|
||||||
tcp_sack - BOOLEAN
|
tcp_sack - BOOLEAN
|
||||||
Enable select acknowledgments (SACKS).
|
Enable select acknowledgments (SACKS).
|
||||||
@@ -358,7 +359,7 @@ tcp_slow_start_after_idle - BOOLEAN
|
|||||||
Default: 1
|
Default: 1
|
||||||
|
|
||||||
tcp_stdurg - BOOLEAN
|
tcp_stdurg - BOOLEAN
|
||||||
Use the Host requirements interpretation of the TCP urg pointer field.
|
Use the Host requirements interpretation of the TCP urgent pointer field.
|
||||||
Most hosts use the older BSD interpretation, so if you turn this on
|
Most hosts use the older BSD interpretation, so if you turn this on
|
||||||
Linux might not communicate correctly with them.
|
Linux might not communicate correctly with them.
|
||||||
Default: FALSE
|
Default: FALSE
|
||||||
@@ -371,12 +372,12 @@ tcp_synack_retries - INTEGER
|
|||||||
tcp_syncookies - BOOLEAN
|
tcp_syncookies - BOOLEAN
|
||||||
Only valid when the kernel was compiled with CONFIG_SYNCOOKIES
|
Only valid when the kernel was compiled with CONFIG_SYNCOOKIES
|
||||||
Send out syncookies when the syn backlog queue of a socket
|
Send out syncookies when the syn backlog queue of a socket
|
||||||
overflows. This is to prevent against the common 'syn flood attack'
|
overflows. This is to prevent against the common 'SYN flood attack'
|
||||||
Default: FALSE
|
Default: FALSE
|
||||||
|
|
||||||
Note, that syncookies is fallback facility.
|
Note, that syncookies is fallback facility.
|
||||||
It MUST NOT be used to help highly loaded servers to stand
|
It MUST NOT be used to help highly loaded servers to stand
|
||||||
against legal connection rate. If you see synflood warnings
|
against legal connection rate. If you see SYN flood warnings
|
||||||
in your logs, but investigation shows that they occur
|
in your logs, but investigation shows that they occur
|
||||||
because of overload with legal connections, you should tune
|
because of overload with legal connections, you should tune
|
||||||
another parameters until this warning disappear.
|
another parameters until this warning disappear.
|
||||||
@@ -386,7 +387,7 @@ tcp_syncookies - BOOLEAN
|
|||||||
to use TCP extensions, can result in serious degradation
|
to use TCP extensions, can result in serious degradation
|
||||||
of some services (f.e. SMTP relaying), visible not by you,
|
of some services (f.e. SMTP relaying), visible not by you,
|
||||||
but your clients and relays, contacting you. While you see
|
but your clients and relays, contacting you. While you see
|
||||||
synflood warnings in logs not being really flooded, your server
|
SYN flood warnings in logs not being really flooded, your server
|
||||||
is seriously misconfigured.
|
is seriously misconfigured.
|
||||||
|
|
||||||
tcp_syn_retries - INTEGER
|
tcp_syn_retries - INTEGER
|
||||||
@@ -419,19 +420,21 @@ tcp_window_scaling - BOOLEAN
|
|||||||
Enable window scaling as defined in RFC1323.
|
Enable window scaling as defined in RFC1323.
|
||||||
|
|
||||||
tcp_wmem - vector of 3 INTEGERs: min, default, max
|
tcp_wmem - vector of 3 INTEGERs: min, default, max
|
||||||
min: Amount of memory reserved for send buffers for TCP socket.
|
min: Amount of memory reserved for send buffers for TCP sockets.
|
||||||
Each TCP socket has rights to use it due to fact of its birth.
|
Each TCP socket has rights to use it due to fact of its birth.
|
||||||
Default: 4K
|
Default: 4K
|
||||||
|
|
||||||
default: Amount of memory allowed for send buffers for TCP socket
|
default: initial size of send buffer used by TCP sockets. This
|
||||||
by default. This value overrides net.core.wmem_default used
|
value overrides net.core.wmem_default used by other protocols.
|
||||||
by other protocols, it is usually lower than net.core.wmem_default.
|
It is usually lower than net.core.wmem_default.
|
||||||
Default: 16K
|
Default: 16K
|
||||||
|
|
||||||
max: Maximal amount of memory allowed for automatically selected
|
max: Maximal amount of memory allowed for automatically tuned
|
||||||
send buffers for TCP socket. This value does not override
|
send buffers for TCP sockets. This value does not override
|
||||||
net.core.wmem_max, "static" selection via SO_SNDBUF does not use this.
|
net.core.wmem_max. Calling setsockopt() with SO_SNDBUF disables
|
||||||
Default: 128K
|
automatic tuning of that socket's send buffer size, in which case
|
||||||
|
this value is ignored.
|
||||||
|
Default: between 64K and 4MB, depending on RAM size.
|
||||||
|
|
||||||
tcp_workaround_signed_windows - BOOLEAN
|
tcp_workaround_signed_windows - BOOLEAN
|
||||||
If set, assume no receipt of a window scaling option means the
|
If set, assume no receipt of a window scaling option means the
|
||||||
@@ -1060,24 +1063,193 @@ bridge-nf-filter-pppoe-tagged - BOOLEAN
|
|||||||
Default: 1
|
Default: 1
|
||||||
|
|
||||||
|
|
||||||
|
proc/sys/net/sctp/* Variables:
|
||||||
|
|
||||||
|
addip_enable - BOOLEAN
|
||||||
|
Enable or disable extension of Dynamic Address Reconfiguration
|
||||||
|
(ADD-IP) functionality specified in RFC5061. This extension provides
|
||||||
|
the ability to dynamically add and remove new addresses for the SCTP
|
||||||
|
associations.
|
||||||
|
|
||||||
|
1: Enable extension.
|
||||||
|
|
||||||
|
0: Disable extension.
|
||||||
|
|
||||||
|
Default: 0
|
||||||
|
|
||||||
|
addip_noauth_enable - BOOLEAN
|
||||||
|
Dynamic Address Reconfiguration (ADD-IP) requires the use of
|
||||||
|
authentication to protect the operations of adding or removing new
|
||||||
|
addresses. This requirement is mandated so that unauthorized hosts
|
||||||
|
would not be able to hijack associations. However, older
|
||||||
|
implementations may not have implemented this requirement while
|
||||||
|
allowing the ADD-IP extension. For reasons of interoperability,
|
||||||
|
we provide this variable to control the enforcement of the
|
||||||
|
authentication requirement.
|
||||||
|
|
||||||
|
1: Allow ADD-IP extension to be used without authentication. This
|
||||||
|
should only be set in a closed environment for interoperability
|
||||||
|
with older implementations.
|
||||||
|
|
||||||
|
0: Enforce the authentication requirement
|
||||||
|
|
||||||
|
Default: 0
|
||||||
|
|
||||||
|
auth_enable - BOOLEAN
|
||||||
|
Enable or disable Authenticated Chunks extension. This extension
|
||||||
|
provides the ability to send and receive authenticated chunks and is
|
||||||
|
required for secure operation of Dynamic Address Reconfiguration
|
||||||
|
(ADD-IP) extension.
|
||||||
|
|
||||||
|
1: Enable this extension.
|
||||||
|
0: Disable this extension.
|
||||||
|
|
||||||
|
Default: 0
|
||||||
|
|
||||||
|
prsctp_enable - BOOLEAN
|
||||||
|
Enable or disable the Partial Reliability extension (RFC3758) which
|
||||||
|
is used to notify peers that a given DATA should no longer be expected.
|
||||||
|
|
||||||
|
1: Enable extension
|
||||||
|
0: Disable
|
||||||
|
|
||||||
|
Default: 1
|
||||||
|
|
||||||
|
max_burst - INTEGER
|
||||||
|
The limit of the number of new packets that can be initially sent. It
|
||||||
|
controls how bursty the generated traffic can be.
|
||||||
|
|
||||||
|
Default: 4
|
||||||
|
|
||||||
|
association_max_retrans - INTEGER
|
||||||
|
Set the maximum number for retransmissions that an association can
|
||||||
|
attempt deciding that the remote end is unreachable. If this value
|
||||||
|
is exceeded, the association is terminated.
|
||||||
|
|
||||||
|
Default: 10
|
||||||
|
|
||||||
|
max_init_retransmits - INTEGER
|
||||||
|
The maximum number of retransmissions of INIT and COOKIE-ECHO chunks
|
||||||
|
that an association will attempt before declaring the destination
|
||||||
|
unreachable and terminating.
|
||||||
|
|
||||||
|
Default: 8
|
||||||
|
|
||||||
|
path_max_retrans - INTEGER
|
||||||
|
The maximum number of retransmissions that will be attempted on a given
|
||||||
|
path. Once this threshold is exceeded, the path is considered
|
||||||
|
unreachable, and new traffic will use a different path when the
|
||||||
|
association is multihomed.
|
||||||
|
|
||||||
|
Default: 5
|
||||||
|
|
||||||
|
rto_initial - INTEGER
|
||||||
|
The initial round trip timeout value in milliseconds that will be used
|
||||||
|
in calculating round trip times. This is the initial time interval
|
||||||
|
for retransmissions.
|
||||||
|
|
||||||
|
Default: 3000
|
||||||
|
|
||||||
|
rto_max - INTEGER
|
||||||
|
The maximum value (in milliseconds) of the round trip timeout. This
|
||||||
|
is the largest time interval that can elapse between retransmissions.
|
||||||
|
|
||||||
|
Default: 60000
|
||||||
|
|
||||||
|
rto_min - INTEGER
|
||||||
|
The minimum value (in milliseconds) of the round trip timeout. This
|
||||||
|
is the smallest time interval the can elapse between retransmissions.
|
||||||
|
|
||||||
|
Default: 1000
|
||||||
|
|
||||||
|
hb_interval - INTEGER
|
||||||
|
The interval (in milliseconds) between HEARTBEAT chunks. These chunks
|
||||||
|
are sent at the specified interval on idle paths to probe the state of
|
||||||
|
a given path between 2 associations.
|
||||||
|
|
||||||
|
Default: 30000
|
||||||
|
|
||||||
|
sack_timeout - INTEGER
|
||||||
|
The amount of time (in milliseconds) that the implementation will wait
|
||||||
|
to send a SACK.
|
||||||
|
|
||||||
|
Default: 200
|
||||||
|
|
||||||
|
valid_cookie_life - INTEGER
|
||||||
|
The default lifetime of the SCTP cookie (in milliseconds). The cookie
|
||||||
|
is used during association establishment.
|
||||||
|
|
||||||
|
Default: 60000
|
||||||
|
|
||||||
|
cookie_preserve_enable - BOOLEAN
|
||||||
|
Enable or disable the ability to extend the lifetime of the SCTP cookie
|
||||||
|
that is used during the establishment phase of SCTP association
|
||||||
|
|
||||||
|
1: Enable cookie lifetime extension.
|
||||||
|
0: Disable
|
||||||
|
|
||||||
|
Default: 1
|
||||||
|
|
||||||
|
rcvbuf_policy - INTEGER
|
||||||
|
Determines if the receive buffer is attributed to the socket or to
|
||||||
|
association. SCTP supports the capability to create multiple
|
||||||
|
associations on a single socket. When using this capability, it is
|
||||||
|
possible that a single stalled association that's buffering a lot
|
||||||
|
of data may block other associations from delivering their data by
|
||||||
|
consuming all of the receive buffer space. To work around this,
|
||||||
|
the rcvbuf_policy could be set to attribute the receiver buffer space
|
||||||
|
to each association instead of the socket. This prevents the described
|
||||||
|
blocking.
|
||||||
|
|
||||||
|
1: rcvbuf space is per association
|
||||||
|
0: recbuf space is per socket
|
||||||
|
|
||||||
|
Default: 0
|
||||||
|
|
||||||
|
sndbuf_policy - INTEGER
|
||||||
|
Similar to rcvbuf_policy above, this applies to send buffer space.
|
||||||
|
|
||||||
|
1: Send buffer is tracked per association
|
||||||
|
0: Send buffer is tracked per socket.
|
||||||
|
|
||||||
|
Default: 0
|
||||||
|
|
||||||
|
sctp_mem - vector of 3 INTEGERs: min, pressure, max
|
||||||
|
Number of pages allowed for queueing by all SCTP sockets.
|
||||||
|
|
||||||
|
min: Below this number of pages SCTP is not bothered about its
|
||||||
|
memory appetite. When amount of memory allocated by SCTP exceeds
|
||||||
|
this number, SCTP starts to moderate memory usage.
|
||||||
|
|
||||||
|
pressure: This value was introduced to follow format of tcp_mem.
|
||||||
|
|
||||||
|
max: Number of pages allowed for queueing by all SCTP sockets.
|
||||||
|
|
||||||
|
Default is calculated at boot time from amount of available memory.
|
||||||
|
|
||||||
|
sctp_rmem - vector of 3 INTEGERs: min, default, max
|
||||||
|
See tcp_rmem for a description.
|
||||||
|
|
||||||
|
sctp_wmem - vector of 3 INTEGERs: min, default, max
|
||||||
|
See tcp_wmem for a description.
|
||||||
|
|
||||||
UNDOCUMENTED:
|
UNDOCUMENTED:
|
||||||
|
|
||||||
dev_weight FIXME
|
/proc/sys/net/core/*
|
||||||
discovery_slots FIXME
|
dev_weight FIXME
|
||||||
discovery_timeout FIXME
|
|
||||||
fast_poll_increase FIXME
|
|
||||||
ip6_queue_maxlen FIXME
|
|
||||||
lap_keepalive_time FIXME
|
|
||||||
lo_cong FIXME
|
|
||||||
max_baud_rate FIXME
|
|
||||||
max_dgram_qlen FIXME
|
|
||||||
max_noreply_time FIXME
|
|
||||||
max_tx_data_size FIXME
|
|
||||||
max_tx_window FIXME
|
|
||||||
min_tx_turn_time FIXME
|
|
||||||
mod_cong FIXME
|
|
||||||
no_cong FIXME
|
|
||||||
no_cong_thresh FIXME
|
|
||||||
slot_timeout FIXME
|
|
||||||
warn_noreply_time FIXME
|
|
||||||
|
|
||||||
|
/proc/sys/net/unix/*
|
||||||
|
max_dgram_qlen FIXME
|
||||||
|
|
||||||
|
/proc/sys/net/irda/*
|
||||||
|
fast_poll_increase FIXME
|
||||||
|
warn_noreply_time FIXME
|
||||||
|
discovery_slots FIXME
|
||||||
|
slot_timeout FIXME
|
||||||
|
max_baud_rate FIXME
|
||||||
|
discovery_timeout FIXME
|
||||||
|
lap_keepalive_time FIXME
|
||||||
|
max_noreply_time FIXME
|
||||||
|
max_tx_data_size FIXME
|
||||||
|
max_tx_window FIXME
|
||||||
|
min_tx_turn_time FIXME
|
||||||
|
|||||||
@@ -76,6 +76,8 @@ struct of_device* of_platform_device_create(struct device_node *np,
|
|||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
dev->dma_mask = 0xffffffffUL;
|
dev->dma_mask = 0xffffffffUL;
|
||||||
|
dev->dev.coherent_dma_mask = DMA_32BIT_MASK;
|
||||||
|
|
||||||
dev->dev.bus = &of_platform_bus_type;
|
dev->dev.bus = &of_platform_bus_type;
|
||||||
|
|
||||||
/* We do not fill the DMA ops for platform devices by default.
|
/* We do not fill the DMA ops for platform devices by default.
|
||||||
|
|||||||
@@ -1,2 +1,3 @@
|
|||||||
vsyscall.lds
|
vsyscall.lds
|
||||||
vsyscall_32.lds
|
vsyscall_32.lds
|
||||||
|
vmlinux.lds
|
||||||
|
|||||||
+24
-1
@@ -300,6 +300,29 @@ void __iomem *ioremap_cache(resource_size_t phys_addr, unsigned long size)
|
|||||||
}
|
}
|
||||||
EXPORT_SYMBOL(ioremap_cache);
|
EXPORT_SYMBOL(ioremap_cache);
|
||||||
|
|
||||||
|
static void __iomem *ioremap_default(resource_size_t phys_addr,
|
||||||
|
unsigned long size)
|
||||||
|
{
|
||||||
|
unsigned long flags;
|
||||||
|
void *ret;
|
||||||
|
int err;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* - WB for WB-able memory and no other conflicting mappings
|
||||||
|
* - UC_MINUS for non-WB-able memory with no other conflicting mappings
|
||||||
|
* - Inherit from confliting mappings otherwise
|
||||||
|
*/
|
||||||
|
err = reserve_memtype(phys_addr, phys_addr + size, -1, &flags);
|
||||||
|
if (err < 0)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
ret = (void *) __ioremap_caller(phys_addr, size, flags,
|
||||||
|
__builtin_return_address(0));
|
||||||
|
|
||||||
|
free_memtype(phys_addr, phys_addr + size);
|
||||||
|
return (void __iomem *)ret;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* iounmap - Free a IO remapping
|
* iounmap - Free a IO remapping
|
||||||
* @addr: virtual address from ioremap_*
|
* @addr: virtual address from ioremap_*
|
||||||
@@ -365,7 +388,7 @@ void *xlate_dev_mem_ptr(unsigned long phys)
|
|||||||
if (page_is_ram(start >> PAGE_SHIFT))
|
if (page_is_ram(start >> PAGE_SHIFT))
|
||||||
return __va(phys);
|
return __va(phys);
|
||||||
|
|
||||||
addr = (void __force *)ioremap(start, PAGE_SIZE);
|
addr = (void __force *)ioremap_default(start, PAGE_SIZE);
|
||||||
if (addr)
|
if (addr)
|
||||||
addr = (void *)((unsigned long)addr | (phys & ~PAGE_MASK));
|
addr = (void *)((unsigned long)addr | (phys & ~PAGE_MASK));
|
||||||
|
|
||||||
|
|||||||
+8
-2
@@ -117,6 +117,7 @@ static int chainiv_init(struct crypto_tfm *tfm)
|
|||||||
static int async_chainiv_schedule_work(struct async_chainiv_ctx *ctx)
|
static int async_chainiv_schedule_work(struct async_chainiv_ctx *ctx)
|
||||||
{
|
{
|
||||||
int queued;
|
int queued;
|
||||||
|
int err = ctx->err;
|
||||||
|
|
||||||
if (!ctx->queue.qlen) {
|
if (!ctx->queue.qlen) {
|
||||||
smp_mb__before_clear_bit();
|
smp_mb__before_clear_bit();
|
||||||
@@ -131,7 +132,7 @@ static int async_chainiv_schedule_work(struct async_chainiv_ctx *ctx)
|
|||||||
BUG_ON(!queued);
|
BUG_ON(!queued);
|
||||||
|
|
||||||
out:
|
out:
|
||||||
return ctx->err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int async_chainiv_postpone_request(struct skcipher_givcrypt_request *req)
|
static int async_chainiv_postpone_request(struct skcipher_givcrypt_request *req)
|
||||||
@@ -227,6 +228,7 @@ static void async_chainiv_do_postponed(struct work_struct *work)
|
|||||||
postponed);
|
postponed);
|
||||||
struct skcipher_givcrypt_request *req;
|
struct skcipher_givcrypt_request *req;
|
||||||
struct ablkcipher_request *subreq;
|
struct ablkcipher_request *subreq;
|
||||||
|
int err;
|
||||||
|
|
||||||
/* Only handle one request at a time to avoid hogging keventd. */
|
/* Only handle one request at a time to avoid hogging keventd. */
|
||||||
spin_lock_bh(&ctx->lock);
|
spin_lock_bh(&ctx->lock);
|
||||||
@@ -241,7 +243,11 @@ static void async_chainiv_do_postponed(struct work_struct *work)
|
|||||||
subreq = skcipher_givcrypt_reqctx(req);
|
subreq = skcipher_givcrypt_reqctx(req);
|
||||||
subreq->base.flags |= CRYPTO_TFM_REQ_MAY_SLEEP;
|
subreq->base.flags |= CRYPTO_TFM_REQ_MAY_SLEEP;
|
||||||
|
|
||||||
async_chainiv_givencrypt_tail(req);
|
err = async_chainiv_givencrypt_tail(req);
|
||||||
|
|
||||||
|
local_bh_disable();
|
||||||
|
skcipher_givcrypt_complete(req, err);
|
||||||
|
local_bh_enable();
|
||||||
}
|
}
|
||||||
|
|
||||||
static int async_chainiv_init(struct crypto_tfm *tfm)
|
static int async_chainiv_init(struct crypto_tfm *tfm)
|
||||||
|
|||||||
+1
-9
@@ -586,12 +586,6 @@ static void test_cipher(char *algo, int enc,
|
|||||||
j = 0;
|
j = 0;
|
||||||
for (i = 0; i < tcount; i++) {
|
for (i = 0; i < tcount; i++) {
|
||||||
|
|
||||||
data = kzalloc(template[i].ilen, GFP_KERNEL);
|
|
||||||
if (!data)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
memcpy(data, template[i].input, template[i].ilen);
|
|
||||||
|
|
||||||
if (template[i].iv)
|
if (template[i].iv)
|
||||||
memcpy(iv, template[i].iv, MAX_IVLEN);
|
memcpy(iv, template[i].iv, MAX_IVLEN);
|
||||||
else
|
else
|
||||||
@@ -613,10 +607,8 @@ static void test_cipher(char *algo, int enc,
|
|||||||
printk("setkey() failed flags=%x\n",
|
printk("setkey() failed flags=%x\n",
|
||||||
crypto_ablkcipher_get_flags(tfm));
|
crypto_ablkcipher_get_flags(tfm));
|
||||||
|
|
||||||
if (!template[i].fail) {
|
if (!template[i].fail)
|
||||||
kfree(data);
|
|
||||||
goto out;
|
goto out;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
temp = 0;
|
temp = 0;
|
||||||
|
|||||||
@@ -29,14 +29,16 @@
|
|||||||
enum {
|
enum {
|
||||||
ATA_ACPI_FILTER_SETXFER = 1 << 0,
|
ATA_ACPI_FILTER_SETXFER = 1 << 0,
|
||||||
ATA_ACPI_FILTER_LOCK = 1 << 1,
|
ATA_ACPI_FILTER_LOCK = 1 << 1,
|
||||||
|
ATA_ACPI_FILTER_DIPM = 1 << 2,
|
||||||
|
|
||||||
ATA_ACPI_FILTER_DEFAULT = ATA_ACPI_FILTER_SETXFER |
|
ATA_ACPI_FILTER_DEFAULT = ATA_ACPI_FILTER_SETXFER |
|
||||||
ATA_ACPI_FILTER_LOCK,
|
ATA_ACPI_FILTER_LOCK |
|
||||||
|
ATA_ACPI_FILTER_DIPM,
|
||||||
};
|
};
|
||||||
|
|
||||||
static unsigned int ata_acpi_gtf_filter = ATA_ACPI_FILTER_DEFAULT;
|
static unsigned int ata_acpi_gtf_filter = ATA_ACPI_FILTER_DEFAULT;
|
||||||
module_param_named(acpi_gtf_filter, ata_acpi_gtf_filter, int, 0644);
|
module_param_named(acpi_gtf_filter, ata_acpi_gtf_filter, int, 0644);
|
||||||
MODULE_PARM_DESC(acpi_gtf_filter, "filter mask for ACPI _GTF commands, set to filter out (0x1=set xfermode, 0x2=lock/freeze lock)");
|
MODULE_PARM_DESC(acpi_gtf_filter, "filter mask for ACPI _GTF commands, set to filter out (0x1=set xfermode, 0x2=lock/freeze lock, 0x4=DIPM)");
|
||||||
|
|
||||||
#define NO_PORT_MULT 0xffff
|
#define NO_PORT_MULT 0xffff
|
||||||
#define SATA_ADR(root, pmp) (((root) << 16) | (pmp))
|
#define SATA_ADR(root, pmp) (((root) << 16) | (pmp))
|
||||||
@@ -195,6 +197,10 @@ static void ata_acpi_handle_hotplug(struct ata_port *ap, struct ata_device *dev,
|
|||||||
/* This device does not support hotplug */
|
/* This device does not support hotplug */
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (event == ACPI_NOTIFY_BUS_CHECK ||
|
||||||
|
event == ACPI_NOTIFY_DEVICE_CHECK)
|
||||||
|
status = acpi_evaluate_integer(handle, "_STA", NULL, &sta);
|
||||||
|
|
||||||
spin_lock_irqsave(ap->lock, flags);
|
spin_lock_irqsave(ap->lock, flags);
|
||||||
|
|
||||||
switch (event) {
|
switch (event) {
|
||||||
@@ -202,7 +208,6 @@ static void ata_acpi_handle_hotplug(struct ata_port *ap, struct ata_device *dev,
|
|||||||
case ACPI_NOTIFY_DEVICE_CHECK:
|
case ACPI_NOTIFY_DEVICE_CHECK:
|
||||||
ata_ehi_push_desc(ehi, "ACPI event");
|
ata_ehi_push_desc(ehi, "ACPI event");
|
||||||
|
|
||||||
status = acpi_evaluate_integer(handle, "_STA", NULL, &sta);
|
|
||||||
if (ACPI_FAILURE(status)) {
|
if (ACPI_FAILURE(status)) {
|
||||||
ata_port_printk(ap, KERN_ERR,
|
ata_port_printk(ap, KERN_ERR,
|
||||||
"acpi: failed to determine bay status (0x%x)\n",
|
"acpi: failed to determine bay status (0x%x)\n",
|
||||||
@@ -690,6 +695,14 @@ static int ata_acpi_filter_tf(const struct ata_taskfile *tf,
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ata_acpi_gtf_filter & ATA_ACPI_FILTER_DIPM) {
|
||||||
|
/* inhibit enabling DIPM */
|
||||||
|
if (tf->command == ATA_CMD_SET_FEATURES &&
|
||||||
|
tf->feature == SETFEATURES_SATA_ENABLE &&
|
||||||
|
tf->nsect == SATA_DIPM)
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -56,6 +56,7 @@ static const struct sis_laptop sis_laptop[] = {
|
|||||||
{ 0x5513, 0x1043, 0x1107 }, /* ASUS A6K */
|
{ 0x5513, 0x1043, 0x1107 }, /* ASUS A6K */
|
||||||
{ 0x5513, 0x1734, 0x105F }, /* FSC Amilo A1630 */
|
{ 0x5513, 0x1734, 0x105F }, /* FSC Amilo A1630 */
|
||||||
{ 0x5513, 0x1071, 0x8640 }, /* EasyNote K5305 */
|
{ 0x5513, 0x1071, 0x8640 }, /* EasyNote K5305 */
|
||||||
|
{ 0x5513, 0x1039, 0x5513 }, /* Targa Visionary 1000 */
|
||||||
/* end marker */
|
/* end marker */
|
||||||
{ 0, }
|
{ 0, }
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -755,9 +755,8 @@ static ssize_t ipmi_write(struct file *file,
|
|||||||
rv = ipmi_heartbeat();
|
rv = ipmi_heartbeat();
|
||||||
if (rv)
|
if (rv)
|
||||||
return rv;
|
return rv;
|
||||||
return 1;
|
|
||||||
}
|
}
|
||||||
return 0;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
||||||
static ssize_t ipmi_read(struct file *file,
|
static ssize_t ipmi_read(struct file *file,
|
||||||
|
|||||||
+2
-1
@@ -678,12 +678,13 @@ static int rtc_do_ioctl(unsigned int cmd, unsigned long arg, int kernel)
|
|||||||
if (arg != (1<<tmp))
|
if (arg != (1<<tmp))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
|
rtc_freq = arg;
|
||||||
|
|
||||||
spin_lock_irqsave(&rtc_lock, flags);
|
spin_lock_irqsave(&rtc_lock, flags);
|
||||||
if (hpet_set_periodic_freq(arg)) {
|
if (hpet_set_periodic_freq(arg)) {
|
||||||
spin_unlock_irqrestore(&rtc_lock, flags);
|
spin_unlock_irqrestore(&rtc_lock, flags);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
rtc_freq = arg;
|
|
||||||
|
|
||||||
val = CMOS_READ(RTC_FREQ_SELECT) & 0xf0;
|
val = CMOS_READ(RTC_FREQ_SELECT) & 0xf0;
|
||||||
val |= (16 - tmp);
|
val |= (16 - tmp);
|
||||||
|
|||||||
@@ -623,6 +623,7 @@ static struct pnp_device_id tpm_pnp_tbl[] __devinitdata = {
|
|||||||
{"IFX0102", 0}, /* Infineon */
|
{"IFX0102", 0}, /* Infineon */
|
||||||
{"BCM0101", 0}, /* Broadcom */
|
{"BCM0101", 0}, /* Broadcom */
|
||||||
{"NSC1200", 0}, /* National */
|
{"NSC1200", 0}, /* National */
|
||||||
|
{"ICO0102", 0}, /* Intel */
|
||||||
/* Add new here */
|
/* Add new here */
|
||||||
{"", 0}, /* User Specified */
|
{"", 0}, /* User Specified */
|
||||||
{"", 0} /* Terminator */
|
{"", 0} /* Terminator */
|
||||||
|
|||||||
@@ -1096,7 +1096,9 @@ static ssize_t show_fw_ver(struct device *dev, struct device_attribute *attr, ch
|
|||||||
struct net_device *lldev = iwch_dev->rdev.t3cdev_p->lldev;
|
struct net_device *lldev = iwch_dev->rdev.t3cdev_p->lldev;
|
||||||
|
|
||||||
PDBG("%s dev 0x%p\n", __func__, dev);
|
PDBG("%s dev 0x%p\n", __func__, dev);
|
||||||
|
rtnl_lock();
|
||||||
lldev->ethtool_ops->get_drvinfo(lldev, &info);
|
lldev->ethtool_ops->get_drvinfo(lldev, &info);
|
||||||
|
rtnl_unlock();
|
||||||
return sprintf(buf, "%s\n", info.fw_version);
|
return sprintf(buf, "%s\n", info.fw_version);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1109,7 +1111,9 @@ static ssize_t show_hca(struct device *dev, struct device_attribute *attr,
|
|||||||
struct net_device *lldev = iwch_dev->rdev.t3cdev_p->lldev;
|
struct net_device *lldev = iwch_dev->rdev.t3cdev_p->lldev;
|
||||||
|
|
||||||
PDBG("%s dev 0x%p\n", __func__, dev);
|
PDBG("%s dev 0x%p\n", __func__, dev);
|
||||||
|
rtnl_lock();
|
||||||
lldev->ethtool_ops->get_drvinfo(lldev, &info);
|
lldev->ethtool_ops->get_drvinfo(lldev, &info);
|
||||||
|
rtnl_unlock();
|
||||||
return sprintf(buf, "%s\n", info.driver);
|
return sprintf(buf, "%s\n", info.driver);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-6
@@ -2017,12 +2017,7 @@ static int __handle_issuing_new_read_requests5(struct stripe_head *sh,
|
|||||||
*/
|
*/
|
||||||
s->uptodate++;
|
s->uptodate++;
|
||||||
return 0; /* uptodate + compute == disks */
|
return 0; /* uptodate + compute == disks */
|
||||||
} else if ((s->uptodate < disks - 1) &&
|
} else if (test_bit(R5_Insync, &dev->flags)) {
|
||||||
test_bit(R5_Insync, &dev->flags)) {
|
|
||||||
/* Note: we hold off compute operations while checks are
|
|
||||||
* in flight, but we still prefer 'compute' over 'read'
|
|
||||||
* hence we only read if (uptodate < * disks-1)
|
|
||||||
*/
|
|
||||||
set_bit(R5_LOCKED, &dev->flags);
|
set_bit(R5_LOCKED, &dev->flags);
|
||||||
set_bit(R5_Wantread, &dev->flags);
|
set_bit(R5_Wantread, &dev->flags);
|
||||||
if (!test_and_set_bit(STRIPE_OP_IO, &sh->ops.pending))
|
if (!test_and_set_bit(STRIPE_OP_IO, &sh->ops.pending))
|
||||||
|
|||||||
@@ -152,6 +152,7 @@ static chipio_t pnp_info;
|
|||||||
static const struct pnp_device_id nsc_ircc_pnp_table[] = {
|
static const struct pnp_device_id nsc_ircc_pnp_table[] = {
|
||||||
{ .id = "NSC6001", .driver_data = 0 },
|
{ .id = "NSC6001", .driver_data = 0 },
|
||||||
{ .id = "IBM0071", .driver_data = 0 },
|
{ .id = "IBM0071", .driver_data = 0 },
|
||||||
|
{ .id = "HWPC224", .driver_data = 0 },
|
||||||
{ }
|
{ }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1546,6 +1546,7 @@ static int via_ircc_net_open(struct net_device *dev)
|
|||||||
IRDA_WARNING("%s, unable to allocate dma2=%d\n",
|
IRDA_WARNING("%s, unable to allocate dma2=%d\n",
|
||||||
driver_name, self->io.dma2);
|
driver_name, self->io.dma2);
|
||||||
free_irq(self->io.irq, self);
|
free_irq(self->io.irq, self);
|
||||||
|
free_dma(self->io.dma);
|
||||||
return -EAGAIN;
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1606,6 +1607,8 @@ static int via_ircc_net_close(struct net_device *dev)
|
|||||||
EnAllInt(iobase, OFF);
|
EnAllInt(iobase, OFF);
|
||||||
free_irq(self->io.irq, dev);
|
free_irq(self->io.irq, dev);
|
||||||
free_dma(self->io.dma);
|
free_dma(self->io.dma);
|
||||||
|
if (self->io.dma2 != self->io.dma)
|
||||||
|
free_dma(self->io.dma2);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -602,6 +602,12 @@ static int tun_set_iff(struct net *net, struct file *file, struct ifreq *ifr)
|
|||||||
tun->attached = 1;
|
tun->attached = 1;
|
||||||
get_net(dev_net(tun->dev));
|
get_net(dev_net(tun->dev));
|
||||||
|
|
||||||
|
/* Make sure persistent devices do not get stuck in
|
||||||
|
* xoff state.
|
||||||
|
*/
|
||||||
|
if (netif_running(tun->dev))
|
||||||
|
netif_wake_queue(tun->dev);
|
||||||
|
|
||||||
strcpy(ifr->ifr_name, tun->dev->name);
|
strcpy(ifr->ifr_name, tun->dev->name);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
|||||||
@@ -777,8 +777,10 @@ static int hostap_cs_suspend(struct pcmcia_device *link)
|
|||||||
int dev_open = 0;
|
int dev_open = 0;
|
||||||
struct hostap_interface *iface = NULL;
|
struct hostap_interface *iface = NULL;
|
||||||
|
|
||||||
if (dev)
|
if (!dev)
|
||||||
iface = netdev_priv(dev);
|
return -ENODEV;
|
||||||
|
|
||||||
|
iface = netdev_priv(dev);
|
||||||
|
|
||||||
PDEBUG(DEBUG_EXTRA, "%s: CS_EVENT_PM_SUSPEND\n", dev_info);
|
PDEBUG(DEBUG_EXTRA, "%s: CS_EVENT_PM_SUSPEND\n", dev_info);
|
||||||
if (iface && iface->local)
|
if (iface && iface->local)
|
||||||
@@ -798,8 +800,10 @@ static int hostap_cs_resume(struct pcmcia_device *link)
|
|||||||
int dev_open = 0;
|
int dev_open = 0;
|
||||||
struct hostap_interface *iface = NULL;
|
struct hostap_interface *iface = NULL;
|
||||||
|
|
||||||
if (dev)
|
if (!dev)
|
||||||
iface = netdev_priv(dev);
|
return -ENODEV;
|
||||||
|
|
||||||
|
iface = netdev_priv(dev);
|
||||||
|
|
||||||
PDEBUG(DEBUG_EXTRA, "%s: CS_EVENT_PM_RESUME\n", dev_info);
|
PDEBUG(DEBUG_EXTRA, "%s: CS_EVENT_PM_RESUME\n", dev_info);
|
||||||
|
|
||||||
|
|||||||
@@ -449,7 +449,7 @@ static void iwl3945_dbg_report_frame(struct iwl3945_priv *priv,
|
|||||||
|
|
||||||
if (print_summary) {
|
if (print_summary) {
|
||||||
char *title;
|
char *title;
|
||||||
u32 rate;
|
int rate;
|
||||||
|
|
||||||
if (hundred)
|
if (hundred)
|
||||||
title = "100Frames";
|
title = "100Frames";
|
||||||
@@ -487,7 +487,7 @@ static void iwl3945_dbg_report_frame(struct iwl3945_priv *priv,
|
|||||||
* but you can hack it to show more, if you'd like to. */
|
* but you can hack it to show more, if you'd like to. */
|
||||||
if (dataframe)
|
if (dataframe)
|
||||||
IWL_DEBUG_RX("%s: mhd=0x%04x, dst=0x%02x, "
|
IWL_DEBUG_RX("%s: mhd=0x%04x, dst=0x%02x, "
|
||||||
"len=%u, rssi=%d, chnl=%d, rate=%u, \n",
|
"len=%u, rssi=%d, chnl=%d, rate=%d, \n",
|
||||||
title, fc, header->addr1[5],
|
title, fc, header->addr1[5],
|
||||||
length, rssi, channel, rate);
|
length, rssi, channel, rate);
|
||||||
else {
|
else {
|
||||||
|
|||||||
@@ -567,11 +567,11 @@ static int lbs_process_bss(struct bss_descriptor *bss,
|
|||||||
pos += 8;
|
pos += 8;
|
||||||
|
|
||||||
/* beacon interval is 2 bytes long */
|
/* beacon interval is 2 bytes long */
|
||||||
bss->beaconperiod = le16_to_cpup((void *) pos);
|
bss->beaconperiod = get_unaligned_le16(pos);
|
||||||
pos += 2;
|
pos += 2;
|
||||||
|
|
||||||
/* capability information is 2 bytes long */
|
/* capability information is 2 bytes long */
|
||||||
bss->capability = le16_to_cpup((void *) pos);
|
bss->capability = get_unaligned_le16(pos);
|
||||||
lbs_deb_scan("process_bss: capabilities 0x%04x\n", bss->capability);
|
lbs_deb_scan("process_bss: capabilities 0x%04x\n", bss->capability);
|
||||||
pos += 2;
|
pos += 2;
|
||||||
|
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user