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
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"
12 /* Some toolchains use a `_' prefix for all user symbols. */
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
17 $cc -print-file-name=lib${lib}.${ext} | grep -q /
20 + for libt in tinfow tinfo ; do
21 + $cc -print-file-name=lib${libt}.${ext} | grep -q /
22 + if [ $? -eq 0 ]; then
33 From: Vasiliy Kulikov <segoon@openwall.com>
34 Date: Fri, 23 Mar 2012 20:56:42 +0400
35 Subject: [PATCH] proc: fix mount -t proc -o AAA
37 proc_parse_options() inside of proc_mount() runs only once at the boot
38 time without any given options. So, following umount(2)+mount(2) ignore
39 mount options: proc_parse_options() is not called as ->s_root is already
40 initialized. To fix that parse mount options unconditionally.
42 Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
43 Reported-by: Arkadiusz MiĆkiewicz <a.miskiewicz@gmail.com>
45 fs/proc/root.c | 9 +++++----
46 1 files changed, 5 insertions(+), 4 deletions(-)
48 diff --git a/fs/proc/root.c b/fs/proc/root.c
49 index 46a15d8..eed44bf 100644
52 @@ -115,12 +115,13 @@ static struct dentry *proc_mount(struct file_system_type *fs_type,
56 + if (!proc_parse_options(options, ns)) {
57 + deactivate_locked_super(sb);
58 + return ERR_PTR(-EINVAL);
63 - if (!proc_parse_options(options, ns)) {
64 - deactivate_locked_super(sb);
65 - return ERR_PTR(-EINVAL);
67 err = proc_fill_super(sb);
69 deactivate_locked_super(sb);
73 diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
74 index 7a0c800..ec5ebbb 100644
75 --- a/drivers/net/ethernet/realtek/r8169.c
76 +++ b/drivers/net/ethernet/realtek/r8169.c
77 @@ -4103,6 +4103,14 @@ rtl8169_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
79 for (i = 0; i < ETH_ALEN; i++)
80 dev->dev_addr[i] = RTL_R8(MAC0 + i);
82 + if (!is_valid_ether_addr(dev->dev_addr)) {
83 + /* Report it and use a random ethernet address instead */
84 + netdev_err(dev, "Invalid MAC address: %pM\n", dev->dev_addr);
85 + random_ether_addr(dev->dev_addr);
86 + netdev_info(dev, "Using random MAC address: %pM\n",
89 memcpy(dev->perm_addr, dev->dev_addr, dev->addr_len);
91 SET_ETHTOOL_OPS(dev, &rtl8169_ethtool_ops);