Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1311297 > unrolled thread
| Started by | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| First post | 2016-01-18 04:50 +0100 |
| Last post | 2016-01-18 13:00 +0100 |
| Articles | 8 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH 3.2 00/70] 3.2.76-rc1 review Ben Hutchings <ben@decadent.org.uk> - 2016-01-18 04:50 +0100
[PATCH 3.2 15/70] spi: fix parent-device reference leak Ben Hutchings <ben@decadent.org.uk> - 2016-01-18 04:50 +0100
[PATCH 3.2 09/70] ALSA: tlv: compute TLV_*_ITEM lengths automatically Ben Hutchings <ben@decadent.org.uk> - 2016-01-18 04:50 +0100
[PATCH 3.2 45/70] Revert "net: add length argument to skb_copy_and_csum_datagram_iovec" Ben Hutchings <ben@decadent.org.uk> - 2016-01-18 04:50 +0100
[PATCH 3.2 08/70] tty: Fix GPF in flush_to_ldisc() Ben Hutchings <ben@decadent.org.uk> - 2016-01-18 04:50 +0100
[PATCH 3.2 11/70] ALSA: usb-audio: Add a more accurate volume quirk for AudioQuest DragonFly Ben Hutchings <ben@decadent.org.uk> - 2016-01-18 04:50 +0100
Re: [PATCH 3.2 00/70] 3.2.76-rc1 review Guenter Roeck <linux@roeck-us.net> - 2016-01-18 10:20 +0100
Re: [PATCH 3.2 00/70] 3.2.76-rc1 review Ben Hutchings <ben@decadent.org.uk> - 2016-01-18 13:00 +0100
| From | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| Date | 2016-01-18 04:50 +0100 |
| Subject | [PATCH 3.2 00/70] 3.2.76-rc1 review |
| Message-ID | <qS8FX-3hu-3@gated-at.bofh.it> |
This is the start of the stable review cycle for the 3.2.76 release.
There are 70 patches in this series, which will be posted as responses
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Wed Jan 20 18:00:00 UTC 2016.
Anything received after that time might be too late.
A combined patch relative to 3.2.75 will be posted as an additional
response to this. A shortlog and diffstat can be found below.
Ben.
-------------
Alan Cox (1):
i2c: i801: Add PCI ID for Intel Braswell
[39e8e30ee544a62c148033d64a979028b958ca05]
Alan Stern (1):
USB: fix invalid memory access in hub_activate()
[e50293ef9775c5f1cf3fcc093037dd6a8c5684ea]
Alexandra Yates (3):
ahci: Order SATA device IDs for codename Lewisburg
[4d92f0099a06ef0e36c7673f7c090f1a448b2d1b]
ahci: add new Intel device IDs
[56e74338a535cbcc2f2da08b1ea1a92920194364]
i2c: i801: add Intel Lewisburg device IDs
[cdc5a3110e7c3ae793f367285789a6bc39c962dc]
Andrew Banman (1):
mm/memory_hotplug.c: check for missing sections in test_pages_in_a_zone()
[5f0f2887f4de9508dcf438deab28f1de8070c271]
Andrew Honig (1):
KVM: x86: Reload pit counters for all channels when restoring state
[0185604c2d82c560dab2f2933a18f797e74ab5a8]
Andrey Ryabinin (1):
ipv6/addrlabel: fix ip6addrlbl_get()
[e459dfeeb64008b2d23bdf600f03b3605dbb8152]
Anssi Hannula (1):
ALSA: usb-audio: Add a more accurate volume quirk for AudioQuest DragonFly
[42e3121d90f42e57f6dbd6083dff2f57b3ec7daa]
Ben Hutchings (2):
Revert "net: add length argument to skb_copy_and_csum_datagram_iovec"
[not upstream; reverted patch was never applied there]
ahci: Add JMicron 362 device IDs
[1fefb8fdc6562057a0e4e4542f3d4323981c9686]
Charles_Rose@Dell.com (1):
ahci: Add Device ID for Intel Sunrise Point PCH
[c5967b79ecabe2baca40658d9073e28b30d7f6cf]
Clemens Ladisch (2):
ALSA: tlv: add DECLARE_TLV_DB_RANGE()
[bf1d1c9b6179faa3bc32cee882462bc8eebde25d]
ALSA: tlv: compute TLV_*_ITEM lengths automatically
[b5b9eb546762c4015c67c31364a6ec6f83fd2ada]
Colin Ian King (1):
ftrace/scripts: Fix incorrect use of sprintf in recordmcount
[713a3e4de707fab49d5aa4bceb77db1058572a7b]
Dan Carpenter (2):
USB: ipaq.c: fix a timeout loop
[abdc9a3b4bac97add99e1d77dc6d28623afe682b]
mISDN: fix a loop count
[40d24c4d8a7430aa4dfd7a665fa3faf3b05b673f]
Dave Airlie (1):
drm/radeon: fix hotplug race at startup
[7f98ca454ad373fc1b76be804fa7138ff68c1d27]
David Howells (1):
KEYS: Fix race between read and revoke
[b4a1b4f5047e4f54e194681125c74c0aa64d637d]
David Vrabel (3):
xen-netback: don't use last request to determine minimum Tx credit
[0f589967a73f1f30ab4ac4dd9ce0bb399b4d6357]
xen-netback: use RING_COPY_REQUEST() throughout
[68a33bfd8403e4e22847165d149823a2e0e67c9c]
xen: Add RING_COPY_REQUEST()
[454d5d882c7e412b840e3c99010fe81a9862f6fb]
Devin Ryles (1):
i2c: i801: Add DeviceIDs for SunrisePoint LP
[3eee1799aed90e990e02a73a89bfcff1982c74dd]
Ed Swierk (1):
MIPS: Fix restart of indirect syscalls
[e967ef022e00bb7c2e5b1a42007abfdd52055050]
Eric Dumazet (2):
ipv6: sctp: fix lockdep splat in sctp_v6_get_dst()
[69ce6487dcd364245a3d26322fc8f4ffd1e8d947]
udp: properly support MSG_PEEK with truncated buffers
[197c949e7798fbf28cfadc69d9ca0c2abbf93191]
Francesco Ruggeri (1):
net: possible use after free in dst_release
[07a5d38453599052aff0877b16bb9c1585f08609]
Georgios Toptsidis (1):
cdrom: Random writing support for BD-RE media
[f7e7868b4743f1cc5e59e6e0ddd3ccf9cfe53a1b]
Hannes Frederic Sowa (1):
net: fix warnings in 'make htmldocs' by moving macro definition out of field declaration
[7bbadd2d1009575dad675afc16650ebb5aa10612]
Helge Deller (1):
parisc: Fix syscall restarts
[71a71fb5374a23be36a91981b5614590b9e722c3]
James Bottomley (2):
ses: Fix problems with simple enclosures
[3417c1b5cb1fdc10261dbed42b05cc93166a78fd]
ses: fix additional element traversal bug
[5e1033561da1152c57b97ee84371dba2b3d64c25]
James Ralston (4):
ahci: Add Device IDs for Intel Wellsburg PCH
[efda332cb66d78d6fdf6f98e7b067480f43624f2]
ahci: Remove Device ID for Intel Sunrise Point PCH
[46319e13581a6c442b0a0e5a3bd5d9af4496f252]
i2c: i801: Add Device IDs for Intel Wellsburg PCH
[a3fc0ff00a46c4b32e7214961a5be9a1dc39b60e]
i2c: i801: Add Device IDs for Intel Wildcat Point-LP PCH
[afc659241258b40b683998ec801d25d276529f43]
James.D.Ralston@Intel.Com (1):
i2c: i801: Add Device IDs for Intel Sunrise Point PCH
[3e27a8445c21f8056517f188303827450590d868]
Jarkko Nikula (2):
i2c: i801: Add support for Intel Broxton
[dd77f423e516293c37c2370b44fd700900409c48]
i2c: i801: Document Intel DNV and Broxton
[2b630df721ee4c286d286ab5d5d958d34c86f067]
Jason A. Donenfeld (1):
crypto: skcipher - Copy iv from desc even for 0-len walks
[70d906bc17500edfa9bdd8c8b7e59618c7911613]
Jean Delvare (2):
i2c: i801: Add device ID for Intel Wildcat Point PCH
[b299de839157852c563b9f133c8b7e630545a9c3]
i2c: i801: Fix the alignment of the device table
[ce3161106ab57afbfbe1c33d95bf4a569405983a]
Johan Hovold (1):
spi: fix parent-device reference leak
[157f38f993919b648187ba341bfb05d0e91ad2f6]
Johannes Berg (1):
rfkill: copy the name into the rfkill struct
[b7bb110008607a915298bf0f47d25886ecb94477]
Johannes Thumshirn (1):
ahci: Add Marvell 88se91a2 device id
[a40cf3f38881ce8543ceb9667150b4f2ead4c437]
Joseph Qi (1):
ocfs2: fix BUG when calculate new backup super
[5c9ee4cbf2a945271f25b89b137f2c03bbc3be33]
Kean ho Chew (1):
i2c: i801: enable Intel BayTrail SMBUS
[1b31e9b76ef8c62291e698dfdb973499986a7f68]
Konrad Rzeszutek Wilk (6):
xen/pciback: Do not install an IRQ handler for MSI interrupts.
[a396f3a210c3a61e94d6b87ec05a75d0be2a60d0]
xen/pciback: Don't allow MSI-X ops if PCI_COMMAND_MEMORY is not set.
[408fb0e5aa7fda0059db282ff58c3b2a4278baa0]
xen/pciback: For XEN_PCI_OP_disable_msi[|x] only disable if device has MSI(X) enabled.
[7cfb905b9638982862f0331b36ccaaca5d383b49]
xen/pciback: Return error on XEN_PCI_OP_enable_msi when device has MSI or MSI-X enabled
[56441f3c8e5bd45aab10dd9f8c505dd4bec03b0d]
xen/pciback: Return error on XEN_PCI_OP_enable_msix when device has MSI or MSI-X enabled
[5e0ce1455c09dd61d029b8ad45d82e1ac0b6c4c9]
xen/pciback: Save xen_pci_op commands before processing it
[8135cf8b092723dbfcc611fe6fdcb3a36c9951c5]
Lucien (1):
sctp: start t5 timer only when peer rwnd is 0 and local state is SHUTDOWN_PENDING
[8a0d19c5ed417c78d03f4e0fa7215e58c40896d8]
Maciej Zuk (1):
HID: dragonrise: fix HID Descriptor for 0x0006 PID
[18339f59c3a6698ee17d32970c9e1e450b16e7c3]
Michael Holzheu (1):
s390/dis: Fix handling of format specifiers
[272fa59ccb4fc802af28b1d699c2463db6a71bf7]
Michal Hocko (1):
vmstat: allocate vmstat_wq before it is used
[751e5f5c753e8d447bcf89f9e96b9616ac081628]
Mika Westerberg (1):
i2c: i801: Add support for Intel DNV
[84d7f2ebd70d36e9d83e0973d2f4dac56a671f4f]
Nikolay Aleksandrov (1):
net/core: revert "net: fix __netdev_update_features return.." and add comment
[17b85d29e82cc3c874a497a8bc5764d6a2b043e2]
Paolo Bonzini (1):
kvm: x86: only channel 0 of the i8254 is linked to the HPET
[e5e57e7a03b1cdcb98e4aed135def2a08cbf3257]
Peter Hurley (1):
tty: Fix GPF in flush_to_ldisc()
[9ce119f318ba1a07c29149301f1544b6c4bea52a]
Roger Pau Monné (1):
xen-blkback: only read request operation from shared ring once
[1f13d75ccb806260079e0679d55d9253e370ec8a]
Russell King (1):
scripts: recordmcount: break hardlinks
[dd39a26538e37f6c6131e829a4a510787e43c783]
Sergei Shtylyov (1):
sh_eth: fix TX buffer byte-swapping
[3e2309937f1e5d538ff13da5fb8de41196927c61]
Seth Heasley (2):
i2c: i801: SMBus patch for Intel Avoton DeviceIDs
[c2db409cbc8751ccc7e6d2cc2e41af0d12ea637f]
i2c: i801: SMBus patch for Intel Coleto Creek DeviceIDs
[f39901c1befa556bc91902516a3e2e460000b4a8]
Steven Rostedt (1):
ftrace/scripts: Have recordmcount copy the object file
[a50bd43935586420fb75f4558369eb08566fac5e]
Thomas Gleixner (1):
genirq: Prevent chip buslock deadlock
[abc7e40c81d113ef4bacb556f0a77ca63ac81d85]
Tilman Schmidt (1):
ser_gigaset: fix deallocation of platform device structure
[4c5e354a974214dfb44cd23fa0429327693bc3ea]
Wang Dongsheng (1):
video: fbdev: fsl: Fix kernel crash when diu_ops is not implemented
[acfc1cc13fe5bc6d7a10afa624f1e560850ddad3]
Documentation/i2c/busses/i2c-i801 | 11 +++
Makefile | 4 +-
arch/mips/kernel/scall32-o32.S | 1 +
arch/mips/kernel/scall64-o32.S | 1 +
arch/parisc/kernel/signal.c | 64 ++++++++++---
arch/s390/kernel/dis.c | 15 +++-
arch/x86/kvm/i8254.c | 1 +
arch/x86/kvm/x86.c | 10 ++-
crypto/ablkcipher.c | 2 +-
crypto/blkcipher.c | 2 +-
drivers/ata/ahci.c | 20 ++++-
drivers/block/xen-blkback/common.h | 8 +-
drivers/cdrom/cdrom.c | 1 +
drivers/gpu/drm/radeon/radeon_irq_kms.c | 5 ++
drivers/hid/hid-dr.c | 58 ++++++++++++
drivers/i2c/busses/Kconfig | 11 +++
drivers/i2c/busses/i2c-i801.c | 154 +++++++++++++++++++++-----------
drivers/isdn/gigaset/ser-gigaset.c | 10 ++-
drivers/isdn/hardware/mISDN/mISDNipac.c | 7 +-
drivers/net/ethernet/renesas/sh_eth.c | 3 +-
drivers/net/xen-netback/netback.c | 34 ++++---
drivers/scsi/ses.c | 30 ++++++-
drivers/spi/spi.c | 2 +-
drivers/tty/tty_buffer.c | 8 +-
drivers/usb/core/hub.c | 24 ++++-
drivers/usb/serial/ipaq.c | 3 +-
drivers/video/fsl-diu-fb.c | 13 ++-
drivers/xen/xen-pciback/pciback.h | 1 +
drivers/xen/xen-pciback/pciback_ops.c | 75 ++++++++++++----
fs/ocfs2/resize.c | 15 +++-
include/linux/enclosure.h | 4 +
include/linux/skbuff.h | 3 +-
include/net/sctp/structs.h | 3 +-
include/net/sock.h | 2 +-
include/sound/tlv.h | 24 +++--
include/xen/interface/io/ring.h | 14 +++
kernel/irq/manage.c | 6 +-
mm/memory_hotplug.c | 31 ++++---
mm/vmstat.c | 3 +-
net/core/datagram.c | 6 +-
net/core/dev.c | 5 +-
net/core/dst.c | 3 +-
net/ipv4/tcp_input.c | 2 +-
net/ipv4/udp.c | 8 +-
net/ipv6/addrlabel.c | 2 +-
net/ipv6/raw.c | 2 +-
net/ipv6/udp.c | 9 +-
net/rfkill/core.c | 6 +-
net/rxrpc/ar-recvmsg.c | 3 +-
net/sctp/ipv6.c | 3 +-
net/sctp/outqueue.c | 1 +
net/sctp/sm_statefuns.c | 3 +-
scripts/recordmcount.c | 137 +++++++++++++++++++++++-----
security/keys/keyctl.c | 18 ++--
sound/usb/mixer.c | 2 +
sound/usb/mixer_maps.c | 12 ---
sound/usb/mixer_quirks.c | 37 ++++++++
sound/usb/mixer_quirks.h | 4 +
58 files changed, 710 insertions(+), 236 deletions(-)
--
Ben Hutchings
A free society is one where it is safe to be unpopular. - Adlai Stevenson
[toc] | [next] | [standalone]
| From | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| Date | 2016-01-18 04:50 +0100 |
| Subject | [PATCH 3.2 15/70] spi: fix parent-device reference leak |
| Message-ID | <qS8Zk-3pH-9@gated-at.bofh.it> |
| In reply to | #1311297 |
3.2.76-rc1 review patch. If anyone has any objections, please let me know.
------------------
From: Johan Hovold <johan@kernel.org>
commit 157f38f993919b648187ba341bfb05d0e91ad2f6 upstream.
Fix parent-device reference leak due to SPI-core taking an unnecessary
reference to the parent when allocating the master structure, a
reference that was never released.
Note that driver core takes its own reference to the parent when the
master device is registered.
Fixes: 49dce689ad4e ("spi doesn't need class_device")
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
drivers/spi/spi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -554,7 +554,7 @@ struct spi_master *spi_alloc_master(stru
device_initialize(&master->dev);
master->dev.class = &spi_master_class;
- master->dev.parent = get_device(dev);
+ master->dev.parent = dev;
spi_master_set_devdata(master, &master[1]);
return master;
[toc] | [prev] | [next] | [standalone]
| From | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| Date | 2016-01-18 04:50 +0100 |
| Subject | [PATCH 3.2 09/70] ALSA: tlv: compute TLV_*_ITEM lengths automatically |
| Message-ID | <qS8Zj-3pH-5@gated-at.bofh.it> |
| In reply to | #1311297 |
3.2.76-rc1 review patch. If anyone has any objections, please let me know.
------------------
From: Clemens Ladisch <clemens@ladisch.de>
commit b5b9eb546762c4015c67c31364a6ec6f83fd2ada upstream.
Add helper macros with a little bit of preprocessor magic to
automatically compute the length of a TLV item. This lets us avoid
having to compute this by hand, and will allow to use items that do
not use a fixed length.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
include/sound/tlv.h | 20 ++++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/include/sound/tlv.h b/include/sound/tlv.h
index 7067e2d..137d165 100644
--- a/include/sound/tlv.h
+++ b/include/sound/tlv.h
@@ -38,21 +38,26 @@
#define SNDRV_CTL_TLVT_DB_MINMAX 4 /* dB scale with min/max */
#define SNDRV_CTL_TLVT_DB_MINMAX_MUTE 5 /* dB scale with min/max with mute */
+#define TLV_ITEM(type, ...) \
+ (type), TLV_LENGTH(__VA_ARGS__), __VA_ARGS__
+#define TLV_LENGTH(...) \
+ ((unsigned int)sizeof((const unsigned int[]) { __VA_ARGS__ }))
+
#define TLV_DB_SCALE_MASK 0xffff
#define TLV_DB_SCALE_MUTE 0x10000
#define TLV_DB_SCALE_ITEM(min, step, mute) \
- SNDRV_CTL_TLVT_DB_SCALE, 2 * sizeof(unsigned int), \
- (min), ((step) & TLV_DB_SCALE_MASK) | ((mute) ? TLV_DB_SCALE_MUTE : 0)
+ TLV_ITEM(SNDRV_CTL_TLVT_DB_SCALE, \
+ (min), \
+ ((step) & TLV_DB_SCALE_MASK) | \
+ ((mute) ? TLV_DB_SCALE_MUTE : 0))
#define DECLARE_TLV_DB_SCALE(name, min, step, mute) \
unsigned int name[] = { TLV_DB_SCALE_ITEM(min, step, mute) }
/* dB scale specified with min/max values instead of step */
#define TLV_DB_MINMAX_ITEM(min_dB, max_dB) \
- SNDRV_CTL_TLVT_DB_MINMAX, 2 * sizeof(unsigned int), \
- (min_dB), (max_dB)
+ TLV_ITEM(SNDRV_CTL_TLVT_DB_MINMAX, (min_dB), (max_dB))
#define TLV_DB_MINMAX_MUTE_ITEM(min_dB, max_dB) \
- SNDRV_CTL_TLVT_DB_MINMAX_MUTE, 2 * sizeof(unsigned int), \
- (min_dB), (max_dB)
+ TLV_ITEM(SNDRV_CTL_TLVT_DB_MINMAX_MUTE, (min_dB), (max_dB))
#define DECLARE_TLV_DB_MINMAX(name, min_dB, max_dB) \
unsigned int name[] = { TLV_DB_MINMAX_ITEM(min_dB, max_dB) }
#define DECLARE_TLV_DB_MINMAX_MUTE(name, min_dB, max_dB) \
@@ -60,8 +65,7 @@
/* linear volume between min_dB and max_dB (.01dB unit) */
#define TLV_DB_LINEAR_ITEM(min_dB, max_dB) \
- SNDRV_CTL_TLVT_DB_LINEAR, 2 * sizeof(unsigned int), \
- (min_dB), (max_dB)
+ TLV_ITEM(SNDRV_CTL_TLVT_DB_LINEAR, (min_dB), (max_dB))
#define DECLARE_TLV_DB_LINEAR(name, min_dB, max_dB) \
unsigned int name[] = { TLV_DB_LINEAR_ITEM(min_dB, max_dB) }
[toc] | [prev] | [next] | [standalone]
| From | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| Date | 2016-01-18 04:50 +0100 |
| Subject | [PATCH 3.2 45/70] Revert "net: add length argument to skb_copy_and_csum_datagram_iovec" |
| Message-ID | <qS8Zk-3pH-13@gated-at.bofh.it> |
| In reply to | #1311297 |
3.2.76-rc1 review patch. If anyone has any objections, please let me know.
------------------
From: Ben Hutchings <ben@decadent.org.uk>
This reverts commit 127500d724f8c43f452610c9080444eedb5eaa6c. That fixed
the problem of buffer over-reads introduced by backporting commit
89c22d8c3b27 ("net: Fix skb csum races when peeking"), but resulted in
incorrect checksumming for short reads. It will be replaced with a
complete fix.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -2134,8 +2134,7 @@ extern int skb_copy_datagram_iove
int size);
extern int skb_copy_and_csum_datagram_iovec(struct sk_buff *skb,
int hlen,
- struct iovec *iov,
- int len);
+ struct iovec *iov);
extern int skb_copy_datagram_from_iovec(struct sk_buff *skb,
int offset,
const struct iovec *from,
--- a/net/core/datagram.c
+++ b/net/core/datagram.c
@@ -709,7 +709,6 @@ EXPORT_SYMBOL(__skb_checksum_complete);
* @skb: skbuff
* @hlen: hardware length
* @iov: io vector
- * @len: amount of data to copy from skb to iov
*
* Caller _must_ check that skb will fit to this iovec.
*
@@ -719,14 +718,11 @@ EXPORT_SYMBOL(__skb_checksum_complete);
* can be modified!
*/
int skb_copy_and_csum_datagram_iovec(struct sk_buff *skb,
- int hlen, struct iovec *iov, int len)
+ int hlen, struct iovec *iov)
{
__wsum csum;
int chunk = skb->len - hlen;
- if (chunk > len)
- chunk = len;
-
if (!chunk)
return 0;
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -5198,7 +5198,7 @@ static int tcp_copy_to_iovec(struct sock
err = skb_copy_datagram_iovec(skb, hlen, tp->ucopy.iov, chunk);
else
err = skb_copy_and_csum_datagram_iovec(skb, hlen,
- tp->ucopy.iov, chunk);
+ tp->ucopy.iov);
if (!err) {
tp->ucopy.len -= chunk;
--- a/net/ipv4/udp.c
+++ b/net/ipv4/udp.c
@@ -1207,7 +1207,7 @@ try_again:
else {
err = skb_copy_and_csum_datagram_iovec(skb,
sizeof(struct udphdr),
- msg->msg_iov, copied);
+ msg->msg_iov);
if (err == -EINVAL)
goto csum_copy_err;
--- a/net/ipv6/raw.c
+++ b/net/ipv6/raw.c
@@ -479,7 +479,7 @@ static int rawv6_recvmsg(struct kiocb *i
goto csum_copy_err;
err = skb_copy_datagram_iovec(skb, 0, msg->msg_iov, copied);
} else {
- err = skb_copy_and_csum_datagram_iovec(skb, 0, msg->msg_iov, copied);
+ err = skb_copy_and_csum_datagram_iovec(skb, 0, msg->msg_iov);
if (err == -EINVAL)
goto csum_copy_err;
}
--- a/net/ipv6/udp.c
+++ b/net/ipv6/udp.c
@@ -383,8 +383,7 @@ try_again:
err = skb_copy_datagram_iovec(skb, sizeof(struct udphdr),
msg->msg_iov, copied );
else {
- err = skb_copy_and_csum_datagram_iovec(skb, sizeof(struct udphdr),
- msg->msg_iov, copied);
+ err = skb_copy_and_csum_datagram_iovec(skb, sizeof(struct udphdr), msg->msg_iov);
if (err == -EINVAL)
goto csum_copy_err;
}
--- a/net/rxrpc/ar-recvmsg.c
+++ b/net/rxrpc/ar-recvmsg.c
@@ -185,8 +185,7 @@ int rxrpc_recvmsg(struct kiocb *iocb, st
msg->msg_iov, copy);
} else {
ret = skb_copy_and_csum_datagram_iovec(skb, offset,
- msg->msg_iov,
- copy);
+ msg->msg_iov);
if (ret == -EINVAL)
goto csum_copy_error;
}
[toc] | [prev] | [next] | [standalone]
| From | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| Date | 2016-01-18 04:50 +0100 |
| Subject | [PATCH 3.2 08/70] tty: Fix GPF in flush_to_ldisc() |
| Message-ID | <qS8Zk-3pH-17@gated-at.bofh.it> |
| In reply to | #1311297 |
3.2.76-rc1 review patch. If anyone has any objections, please let me know.
------------------
From: Peter Hurley <peter@hurleysoftware.com>
commit 9ce119f318ba1a07c29149301f1544b6c4bea52a upstream.
A line discipline which does not define a receive_buf() method can
can cause a GPF if data is ever received [1]. Oddly, this was known
to the author of n_tracesink in 2011, but never fixed.
[1] GPF report
BUG: unable to handle kernel NULL pointer dereference at (null)
IP: [< (null)>] (null)
PGD 3752d067 PUD 37a7b067 PMD 0
Oops: 0010 [#1] SMP KASAN
Modules linked in:
CPU: 2 PID: 148 Comm: kworker/u10:2 Not tainted 4.4.0-rc2+ #51
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
Workqueue: events_unbound flush_to_ldisc
task: ffff88006da94440 ti: ffff88006db60000 task.ti: ffff88006db60000
RIP: 0010:[<0000000000000000>] [< (null)>] (null)
RSP: 0018:ffff88006db67b50 EFLAGS: 00010246
RAX: 0000000000000102 RBX: ffff88003ab32f88 RCX: 0000000000000102
RDX: 0000000000000000 RSI: ffff88003ab330a6 RDI: ffff88003aabd388
RBP: ffff88006db67c48 R08: ffff88003ab32f9c R09: ffff88003ab31fb0
R10: ffff88003ab32fa8 R11: 0000000000000000 R12: dffffc0000000000
R13: ffff88006db67c20 R14: ffffffff863df820 R15: ffff88003ab31fb8
FS: 0000000000000000(0000) GS:ffff88006dc00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 0000000000000000 CR3: 0000000037938000 CR4: 00000000000006e0
Stack:
ffffffff829f46f1 ffff88006da94bf8 ffff88006da94bf8 0000000000000000
ffff88003ab31fb0 ffff88003aabd438 ffff88003ab31ff8 ffff88006430fd90
ffff88003ab32f9c ffffed0007557a87 1ffff1000db6cf78 ffff88003ab32078
Call Trace:
[<ffffffff8127cf91>] process_one_work+0x8f1/0x17a0 kernel/workqueue.c:2030
[<ffffffff8127df14>] worker_thread+0xd4/0x1180 kernel/workqueue.c:2162
[<ffffffff8128faaf>] kthread+0x1cf/0x270 drivers/block/aoe/aoecmd.c:1302
[<ffffffff852a7c2f>] ret_from_fork+0x3f/0x70 arch/x86/entry/entry_64.S:468
Code: Bad RIP value.
RIP [< (null)>] (null)
RSP <ffff88006db67b50>
CR2: 0000000000000000
---[ end trace a587f8947e54d6ea ]---
Reported-by: Dmitry Vyukov <dvyukov@google.com>
Signed-off-by: Peter Hurley <peter@hurleysoftware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
--- a/drivers/tty/tty_buffer.c
+++ b/drivers/tty/tty_buffer.c
@@ -442,10 +442,12 @@ static void flush_to_ldisc(struct work_s
char_buf = head->char_buf_ptr + head->read;
flag_buf = head->flag_buf_ptr + head->read;
head->read += count;
- spin_unlock_irqrestore(&tty->buf.lock, flags);
- disc->ops->receive_buf(tty, char_buf,
+ if (disc->ops->receive_buf) {
+ spin_unlock_irqrestore(&tty->buf.lock, flags);
+ disc->ops->receive_buf(tty, char_buf,
flag_buf, count);
- spin_lock_irqsave(&tty->buf.lock, flags);
+ spin_lock_irqsave(&tty->buf.lock, flags);
+ }
}
clear_bit(TTY_FLUSHING, &tty->flags);
}
[toc] | [prev] | [next] | [standalone]
| From | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| Date | 2016-01-18 04:50 +0100 |
| Subject | [PATCH 3.2 11/70] ALSA: usb-audio: Add a more accurate volume quirk for AudioQuest DragonFly |
| Message-ID | <qS8Zk-3pH-19@gated-at.bofh.it> |
| In reply to | #1311297 |
3.2.76-rc1 review patch. If anyone has any objections, please let me know.
------------------
From: Anssi Hannula <anssi.hannula@iki.fi>
commit 42e3121d90f42e57f6dbd6083dff2f57b3ec7daa upstream.
AudioQuest DragonFly DAC reports a volume control range of 0..50
(0x0000..0x0032) which in USB Audio means a range of 0 .. 0.2dB, which
is obviously incorrect and would cause software using the dB information
in e.g. volume sliders to have a massive volume difference in 100..102%
range.
Commit 2d1cb7f658fb ("ALSA: usb-audio: add dB range mapping for some
devices") added a dB range mapping for it with range 0..50 dB.
However, the actual volume mapping seems to be neither linear volume nor
linear dB scale, but instead quite close to the cubic mapping e.g.
alsamixer uses, with a range of approx. -53...0 dB.
Replace the previous quirk with a custom dB mapping based on some basic
output measurements, using a 10-item range TLV (which will still fit in
alsa-lib MAX_TLV_RANGE_SIZE).
Tested on AudioQuest DragonFly HW v1.2. The quirk is only applied if the
range is 0..50, so if this gets fixed/changed in later HW revisions it
will no longer be applied.
v2: incorporated Takashi Iwai's suggestion for the quirk application
method
Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
[bwh: Backported to 3.2: open-code usb_audio_info()]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
sound/usb/mixer.c | 2 ++
sound/usb/mixer_maps.c | 12 ------------
sound/usb/mixer_quirks.c | 37 +++++++++++++++++++++++++++++++++++++
sound/usb/mixer_quirks.h | 4 ++++
4 files changed, 43 insertions(+), 12 deletions(-)
--- a/sound/usb/mixer.c
+++ b/sound/usb/mixer.c
@@ -1213,6 +1213,8 @@ static void build_feature_ctl(struct mix
break;
}
+ snd_usb_mixer_fu_apply_quirk(state->mixer, cval, unitid, kctl);
+
range = (cval->max - cval->min) / cval->res;
/* Are there devices with volume range more than 255? I use a bit more
* to be sure. 384 is a resolution magic number found on Logitech
--- a/sound/usb/mixer_maps.c
+++ b/sound/usb/mixer_maps.c
@@ -319,13 +319,6 @@ static struct usbmix_name_map bose_compa
{ 0 } /* terminator */
};
-/* Dragonfly DAC 1.2, the dB conversion factor is 1 instead of 256 */
-static struct usbmix_dB_map dragonfly_1_2_dB = {0, 5000};
-static struct usbmix_name_map dragonfly_1_2_map[] = {
- { 7, NULL, .dB = &dragonfly_1_2_dB },
- { 0 } /* terminator */
-};
-
/*
* Control map entries
*/
@@ -413,11 +406,6 @@ static struct usbmix_ctl_map usbmix_ctl_
.id = USB_ID(0x05a7, 0x1020),
.map = bose_companion5_map,
},
- {
- /* Dragonfly DAC 1.2 */
- .id = USB_ID(0x21b4, 0x0081),
- .map = dragonfly_1_2_map,
- },
{ 0 } /* terminator */
};
--- a/sound/usb/mixer_quirks.c
+++ b/sound/usb/mixer_quirks.c
@@ -34,6 +34,7 @@
#include <sound/control.h>
#include <sound/hwdep.h>
#include <sound/info.h>
+#include <sound/tlv.h>
#include "usbaudio.h"
#include "mixer.h"
@@ -681,4 +682,40 @@ void snd_usb_mixer_rc_memory_change(stru
break;
}
}
+
+static void snd_dragonfly_quirk_db_scale(struct usb_mixer_interface *mixer,
+ struct snd_kcontrol *kctl)
+{
+ /* Approximation using 10 ranges based on output measurement on hw v1.2.
+ * This seems close to the cubic mapping e.g. alsamixer uses. */
+ static const DECLARE_TLV_DB_RANGE(scale,
+ 0, 1, TLV_DB_MINMAX_ITEM(-5300, -4970),
+ 2, 5, TLV_DB_MINMAX_ITEM(-4710, -4160),
+ 6, 7, TLV_DB_MINMAX_ITEM(-3884, -3710),
+ 8, 14, TLV_DB_MINMAX_ITEM(-3443, -2560),
+ 15, 16, TLV_DB_MINMAX_ITEM(-2475, -2324),
+ 17, 19, TLV_DB_MINMAX_ITEM(-2228, -2031),
+ 20, 26, TLV_DB_MINMAX_ITEM(-1910, -1393),
+ 27, 31, TLV_DB_MINMAX_ITEM(-1322, -1032),
+ 32, 40, TLV_DB_MINMAX_ITEM(-968, -490),
+ 41, 50, TLV_DB_MINMAX_ITEM(-441, 0),
+ );
+
+ dev_info(&mixer->chip->dev->dev, "applying DragonFly dB scale quirk\n");
+ kctl->tlv.p = scale;
+ kctl->vd[0].access |= SNDRV_CTL_ELEM_ACCESS_TLV_READ;
+ kctl->vd[0].access &= ~SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK;
+}
+
+void snd_usb_mixer_fu_apply_quirk(struct usb_mixer_interface *mixer,
+ struct usb_mixer_elem_info *cval, int unitid,
+ struct snd_kcontrol *kctl)
+{
+ switch (mixer->chip->usb_id) {
+ case USB_ID(0x21b4, 0x0081): /* AudioQuest DragonFly */
+ if (unitid == 7 && cval->min == 0 && cval->max == 50)
+ snd_dragonfly_quirk_db_scale(mixer, kctl);
+ break;
+ }
+}
--- a/sound/usb/mixer_quirks.h
+++ b/sound/usb/mixer_quirks.h
@@ -9,5 +9,9 @@ void snd_emuusb_set_samplerate(struct sn
void snd_usb_mixer_rc_memory_change(struct usb_mixer_interface *mixer,
int unitid);
+void snd_usb_mixer_fu_apply_quirk(struct usb_mixer_interface *mixer,
+ struct usb_mixer_elem_info *cval, int unitid,
+ struct snd_kcontrol *kctl);
+
#endif /* SND_USB_MIXER_QUIRKS_H */
[toc] | [prev] | [next] | [standalone]
| From | Guenter Roeck <linux@roeck-us.net> |
|---|---|
| Date | 2016-01-18 10:20 +0100 |
| Message-ID | <qSe8G-6ZE-19@gated-at.bofh.it> |
| In reply to | #1311297 |
On 01/17/2016 07:18 PM, Ben Hutchings wrote: > This is the start of the stable review cycle for the 3.2.76 release. > There are 70 patches in this series, which will be posted as responses > to this one. If anyone has any issues with these being applied, please > let me know. > > Responses should be made by Wed Jan 20 18:00:00 UTC 2016. > Anything received after that time might be too late. > Build results: total: 93 pass: 93 fail: 0 Qemu test results: total: 58 pass: 58 fail: 0 Details are available at http://kerneltests.org/builders. Thanks, Guenter
[toc] | [prev] | [next] | [standalone]
| From | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| Date | 2016-01-18 13:00 +0100 |
| Message-ID | <qSgDw-7n-5@gated-at.bofh.it> |
| In reply to | #1311389 |
[Multipart message — attachments visible in raw view] — view raw
On Mon, 2016-01-18 at 01:12 -0800, Guenter Roeck wrote: > On 01/17/2016 07:18 PM, Ben Hutchings wrote: > > This is the start of the stable review cycle for the 3.2.76 release. > > There are 70 patches in this series, which will be posted as responses > > to this one. If anyone has any issues with these being applied, please > > let me know. > > > > Responses should be made by Wed Jan 20 18:00:00 UTC 2016. > > Anything received after that time might be too late. > > > > Build results: > total: 93 pass: 93 fail: 0 > Qemu test results: > total: 58 pass: 58 fail: 0 > > Details are available at http://kerneltests.org/builders. Thanks for checking. Ben. -- Ben Hutchings A free society is one where it is safe to be unpopular. - Adlai Stevenson
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web