]> git.pld-linux.org Git - packages/kernel.git/blame - kernel-small_fixes.patch
- fix vserver patch for 3.14.5
[packages/kernel.git] / kernel-small_fixes.patch
CommitLineData
08aa9d92 1--- linux-2.6.33/scripts/mod/modpost.c~ 2010-02-24 19:52:17.000000000 +0100
2+++ linux-2.6.33/scripts/mod/modpost.c 2010-03-07 14:26:47.242168558 +0100
3@@ -15,7 +15,8 @@
4 #include <stdio.h>
5 #include <ctype.h>
6 #include "modpost.h"
7-#include "../../include/generated/autoconf.h"
8+// PLD architectures don't use CONFIG_SYMBOL_PREFIX
9+//#include "../../include/generated/autoconf.h"
10 #include "../../include/linux/license.h"
11
12 /* Some toolchains use a `_' prefix for all user symbols. */
13
2136e199
AM
14--- linux-3.0/scripts/kconfig/lxdialog/check-lxdialog.sh~ 2011-07-22 04:17:23.000000000 +0200
15+++ linux-3.0/scripts/kconfig/lxdialog/check-lxdialog.sh 2011-08-25 21:26:04.799150642 +0200
16@@ -9,6 +9,12 @@
17 $cc -print-file-name=lib${lib}.${ext} | grep -q /
18 if [ $? -eq 0 ]; then
19 echo "-l${lib}"
20+ for libt in tinfow tinfo ; do
21+ $cc -print-file-name=lib${libt}.${ext} | grep -q /
22+ if [ $? -eq 0 ]; then
23+ echo "-l${libt}"
24+ fi
25+ done
26 exit
27 fi
28 done
44c0f99c 29
59e60efc
AM
30diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
31index 7a0c800..ec5ebbb 100644
32--- a/drivers/net/ethernet/realtek/r8169.c
33+++ b/drivers/net/ethernet/realtek/r8169.c
514e5dae 34@@ -6927,6 +6927,14 @@ rtl_init_one(struct pci_dev *pdev, const
59e60efc
AM
35 for (i = 0; i < ETH_ALEN; i++)
36 dev->dev_addr[i] = RTL_R8(MAC0 + i);
514e5dae 37
59e60efc
AM
38+ if (!is_valid_ether_addr(dev->dev_addr)) {
39+ /* Report it and use a random ethernet address instead */
40+ netdev_err(dev, "Invalid MAC address: %pM\n", dev->dev_addr);
41+ random_ether_addr(dev->dev_addr);
42+ netdev_info(dev, "Using random MAC address: %pM\n",
514e5dae 43+ dev->dev_addr);
59e60efc 44+ }
514e5dae 45+
59e60efc 46 SET_ETHTOOL_OPS(dev, &rtl8169_ethtool_ops);
514e5dae
AM
47 dev->watchdog_timeo = RTL8169_TX_TIMEOUT;
48
20e3bfd4
KK
49[PATCH] SCSI: Don't attempt to send extended INQUIRY command if skip_vpd_pages is set
50
51If a device has the skip_vpd_pages flag set we should simply fail the
52scsi_get_vpd_page() call.
53
54Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
55Acked-by: Alan Stern <stern@rowland.harvard.edu>
56Tested-by: Stuart Foster <smf.linux@ntlworld.com>
57Cc: stable@vger.kernel.org
58
59diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c
60index 3b1ea34..eaa808e 100644
61--- a/drivers/scsi/scsi.c
62+++ b/drivers/scsi/scsi.c
63@@ -1031,6 +1031,9 @@
64 {
65 int i, result;
66
67+ if (sdev->skip_vpd_pages)
68+ goto fail;
69+
70 /* Ask for all the pages supported by this device */
71 result = scsi_vpd_inquiry(sdev, buf, 0, buf_len);
72 if (result)
e8792e4a 73
f36e5ee2
AM
74From 1e2ee49f7f1b79f0b14884fe6a602f0411b39552 Mon Sep 17 00:00:00 2001
75From: Will Woods <wwoods@redhat.com>
76Date: Tue, 6 May 2014 12:50:10 -0700
77Subject: fanotify: fix -EOVERFLOW with large files on 64-bit
78
79On 64-bit systems, O_LARGEFILE is automatically added to flags inside
80the open() syscall (also openat(), blkdev_open(), etc). Userspace
81therefore defines O_LARGEFILE to be 0 - you can use it, but it's a
82no-op. Everything should be O_LARGEFILE by default.
83
84But: when fanotify does create_fd() it uses dentry_open(), which skips
85all that. And userspace can't set O_LARGEFILE in fanotify_init()
86because it's defined to 0. So if fanotify gets an event regarding a
87large file, the read() will just fail with -EOVERFLOW.
88
89This patch adds O_LARGEFILE to fanotify_init()'s event_f_flags on 64-bit
90systems, using the same test as open()/openat()/etc.
91
92Addresses https://bugzilla.redhat.com/show_bug.cgi?id=696821
93
94Signed-off-by: Will Woods <wwoods@redhat.com>
95Acked-by: Eric Paris <eparis@redhat.com>
96Reviewed-by: Jan Kara <jack@suse.cz>
97Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
98Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
99
100diff --git a/fs/notify/fanotify/fanotify_user.c b/fs/notify/fanotify/fanotify_user.c
101index 4e565c8..732648b 100644
102--- a/fs/notify/fanotify/fanotify_user.c
103+++ b/fs/notify/fanotify/fanotify_user.c
104@@ -698,6 +698,8 @@ SYSCALL_DEFINE2(fanotify_init, unsigned int, flags, unsigned int, event_f_flags)
105 }
106 group->overflow_event = &oevent->fse;
107
108+ if (force_o_largefile())
109+ event_f_flags |= O_LARGEFILE;
110 group->fanotify_data.f_flags = event_f_flags;
111 #ifdef CONFIG_FANOTIFY_ACCESS_PERMISSIONS
112 spin_lock_init(&group->fanotify_data.access_lock);
113--
114cgit v0.10.1
115
8c7ec0f2
ŁK
116From 50c6e282bdf5e8dabf8d7cf7b162545a55645fd9 Mon Sep 17 00:00:00 2001
117From: Christoph Hellwig <hch@lst.de>
118Date: Sun, 4 May 2014 13:03:32 +0200
119Subject: posix_acl: handle NULL ACL in posix_acl_equiv_mode
120
121Various filesystems don't bother checking for a NULL ACL in
122posix_acl_equiv_mode, and thus can dereference a NULL pointer when it
123gets passed one. This usually happens from the NFS server, as the ACL tools
124never pass a NULL ACL, but instead of one representing the mode bits.
125
126Instead of adding boilerplat to all filesystems put this check into one place,
127which will allow us to remove the check from other filesystems as well later
128on.
129
130Signed-off-by: Christoph Hellwig <hch@lst.de>
131Reported-by: Ben Greear <greearb@candelatech.com>
132Reported-by: Marco Munderloh <munderl@tnt.uni-hannover.de>,
133Cc: Chuck Lever <chuck.lever@oracle.com>
134Cc: stable@vger.kernel.org
135Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
136
137diff --git a/fs/posix_acl.c b/fs/posix_acl.c
138index 9e363e4..0855f77 100644
139--- a/fs/posix_acl.c
140+++ b/fs/posix_acl.c
141@@ -246,6 +246,12 @@ posix_acl_equiv_mode(const struct posix_acl *acl, umode_t *mode_p)
142 umode_t mode = 0;
143 int not_equiv = 0;
144
145+ /*
146+ * A null ACL can always be presented as mode bits.
147+ */
148+ if (!acl)
149+ return 0;
150+
151 FOREACH_ACL_ENTRY(pa, acl, pe) {
152 switch (pa->e_tag) {
153 case ACL_USER_OBJ:
154--
155cgit v0.10.1
156
This page took 0.245256 seconds and 4 git commands to generate.