Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Odroid 3.0.57 #7

Merged
merged 157 commits into from
Jan 8, 2013
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
157 commits
Select commit Hold shift + click to select a range
a699cd3
ath9k: fix stale pointers potentially causing access to free'd skbs
Oct 25, 2012
4a7dfa5
rt2800: validate step value for temperature compensation
Oct 25, 2012
f100fdf
target: Don't return success from module_init() if setup fails
rolandd Oct 31, 2012
58bca02
cfg80211: fix antenna gain handling
Oct 17, 2012
4bdd5ed
wireless: drop invalid mesh address extension frames
jmberg-intel Oct 25, 2012
6f8acfd
mac80211: don't inspect Sequence Control field on control frames
Oct 25, 2012
2dda2bb
DRM/Radeon: Fix Load Detection on legacy primary DAC.
e4t Oct 24, 2012
03938ad
mac80211: check management frame header length
jmberg-intel Oct 25, 2012
9c750c9
mac80211: fix SSID copy on IBSS JOIN
Oct 26, 2012
e4648b1
nfsv3: Make v3 mounts fail with ETIMEDOUTs instead EIO on mountd time…
scottmayhew Oct 16, 2012
6fbd3cd
nfs: Show original device name verbatim in /proc/*/mount{s,info}
bwhacks Oct 21, 2012
f354d0c
NFSv4: nfs4_locku_done must release the sequence id
Oct 29, 2012
110d3a2
nfsd: add get_uint for u32's
Jun 12, 2012
095a518
NFS: fix bug in legacy DNS resolver.
neilbrown Oct 31, 2012
4d02840
NFS: Fix Oopses in nfs_lookup_revalidate and nfs4_lookup_revalidate
Aug 22, 2012
356c93d
drm: restore open_count if drm_setup fails
ihadzic Oct 29, 2012
ec1f5bf
hwmon: (w83627ehf) Force initial bank selection
Nov 5, 2012
61bc285
ALSA: PCM: Fix some races at disconnection
tiwai Nov 7, 2012
ea7b69a
ALSA: usb-audio: Fix races at disconnection
tiwai Nov 7, 2012
1456577
ALSA: usb-audio: Use rwsem for disconnect protection
tiwai Nov 7, 2012
fb434cc
ALSA: usb-audio: Fix races at disconnection in mixer_quirks.c
tiwai Nov 7, 2012
40edba6
ALSA: Add a reference counter to card instance
tiwai Nov 7, 2012
8a7173c
ALSA: Avoid endless sleep after disconnect
tiwai Nov 7, 2012
b232704
sctp: fix call to SCTP_CMD_PROCESS_SACK in sctp_cmd_interpreter()
Oct 15, 2012
fdc00ab
netlink: use kfree_rcu() in netlink_release()
Oct 18, 2012
3297d60
tcp: fix FIONREAD/SIOCINQ
Oct 18, 2012
db138ef
ipv6: Set default hoplimit as zero.
Oct 24, 2012
690bfe5
net: usb: Fix memory leak on Tx data path
Oct 25, 2012
798c7db
net: fix divide by zero in tcp algorithm illinois
netoptimizer Oct 31, 2012
5a3e425
l2tp: fix oops in l2tp_eth_create() error path
tomparkin Oct 29, 2012
2e570a4
ipv6: send unsolicited neighbour advertisements to all-nodes
strssndktn Nov 6, 2012
2f56580
futex: Handle futex_pi OWNER_DIED take over correctly
KAGA-KOKO Oct 23, 2012
d18edec
drm/vmwgfx: Fix hibernation device reset
thomashvmw Nov 9, 2012
9615dee
drm/i915: fixup infoframe support for sdvo
danvet May 12, 2012
b7832d4
drm/i915: clear the entire sdvo infoframe buffer
danvet Oct 21, 2012
87725c3
USB: mos7840: remove unused variable
jhovold Nov 8, 2012
11b34bb
xfs: fix reading of wrapped log data
Nov 2, 2012
919609d
intel-iommu: Fix AB-BA lockdep report
rolandd Jul 20, 2011
aaf238b
ALSA: Fix card refcount unbalance
tiwai Nov 8, 2012
0933714
ALSA: usb-audio: Fix mutex deadlock at disconnection
tiwai Nov 13, 2012
89d2d13
Linux 3.0.52
gregkh Nov 17, 2012
218440d
mm: bugfix: set current->reclaim_state to NULL while returning from k…
Nov 8, 2012
5a5ffbe
fanotify: fix missing break
eparis Nov 8, 2012
8493a23
crypto: cryptd - disable softirqs in cryptd_queue_worker to prevent d…
jkivilin Oct 21, 2012
57ecc1f
ALSA: hda: Cirrus: Fix coefficient index for beep configuration
Nov 1, 2012
174aad5
ALSA: hda - Force to reset IEC958 status bits for AD codecs
tiwai Nov 5, 2012
dd5df62
ASoC: wm8978: pll incorrectly configured when codec is master
Nov 2, 2012
bb71076
ASoC: dapm: Use card_list during DAPM shutdown
Nov 8, 2012
ad33dc0
UBIFS: fix mounting problems after power cuts
dedekind Oct 9, 2012
f174b32
UBIFS: introduce categorized lprops counter
dedekind Oct 10, 2012
55d60ef
s390/gup: add missing TASK_SIZE check to get_user_pages_fast()
heicarst Oct 22, 2012
5ff767d
USB: option: add Novatel E362 and Dell Wireless 5800 USB IDs
dcbw Nov 8, 2012
b67793d
USB: option: add Alcatel X220/X500D USB IDs
dcbw Nov 8, 2012
7e2c753
wireless: allow 40 MHz on world roaming channels 12/13
jmberg-intel Nov 12, 2012
345d88c
m68k: fix sigset_t accessor functions
andreas-schwab Nov 17, 2012
26aeb8b
ipv4: avoid undefined behavior in do_ip_setsockopt()
xiw Nov 11, 2012
db4bf38
ipv6: setsockopt(IPIPPROTO_IPV6, IPV6_MINHOPCOUNT) forgot to set retu…
strssndktn Nov 10, 2012
c5d6a96
net: correct check in dev_addr_del()
jpirko Nov 14, 2012
3cc4ead
net-rps: Fix brokeness causing OOO packets
Nov 16, 2012
bb976b0
r8169: use unlimited DMA burst for TX
michich Sep 9, 2012
02f7a0d
kbuild: Fix gcc -x syntax
jdelvare Oct 2, 2012
d87b26d
netfilter: Validate the sequence number of dataless ACK packets as well
Aug 31, 2012
9e8b32b
netfilter: Mark SYN/ACK packets as invalid from original direction
Aug 31, 2012
328325b
netfilter: nf_nat: don't check for port change on ICMP tuples
Oct 25, 2012
40ebcb8
usb: use usb_serial_put in usb_serial_probe errors
May 22, 2012
34396c6
eCryptfs: Copy up POSIX ACL and read-only flags from lower mount
tyhicks Jun 11, 2012
6c0e763
eCryptfs: check for eCryptfs cipher support at mount
tsally Jul 12, 2012
bb9583e
sky2: Fix for interrupt handler
pldemone Jul 3, 2012
c76fbef
drm/i915: fix overlay on i830M
danvet Oct 22, 2012
31fcdd0
NFS: Wait for session recovery to finish before returning
Oct 30, 2012
daa88cb
reiserfs: Fix lock ordering during remount
jankara Nov 13, 2012
a7b8408
reiserfs: Protect reiserfs_quota_on() with write lock
jankara Nov 13, 2012
2f21676
reiserfs: Move quota calls out of write lock
jankara Nov 13, 2012
7eebd4f
reiserfs: Protect reiserfs_quota_write() with write lock
jankara Nov 13, 2012
95eb6d3
selinux: fix sel_netnode_insert() suspicious rcu dereference
Nov 9, 2012
36720ae
PCI : ability to relocate assigned pci-resources
Jul 25, 2011
8515be6
PCI : Calculate right add_size
Jan 21, 2012
b87c48d
Resource: fix wrong resource window calculation
Sep 22, 2011
2fc3fd4
Linux 3.0.53
gregkh Nov 26, 2012
fa52e1c
ALSA: pcmcia - Use pcmcia_request_irq()
tiwai Jun 14, 2011
a0bdb13
drivers/block/DAC960: fix DAC960_V2_IOCTL_Opcode_T -Wenum-compare war…
dalgaaf Mar 2, 2012
6ce2a94
drivers/block/DAC960: fix -Wuninitialized warning
dalgaaf Mar 2, 2012
7ddaba0
riva/fbdev: fix several -Wuninitialized
dalgaaf Jan 30, 2012
ec34868
ifenslave: Fix unused variable warnings.
davem330 Nov 26, 2011
683448e
x86-32: Fix invalid stack address while in softirq
Sep 3, 2012
2be8019
x86, microcode, AMD: Add support for family 16h processors
ostr Nov 15, 2012
37fd5d3
rtlwifi: rtl8192cu: Add new USB ID
AlbertJP Oct 30, 2012
d3a11ab
mwifiex: report error to MMC core if we cannot suspend
bingz Nov 15, 2012
14de2f6
SCSI: isci: copy fis 0x34 response into proper buffer
mpatelcz Oct 15, 2012
08dc993
ALSA: ua101, usx2y: fix broken MIDI output
cladisch Oct 31, 2012
a536dd3
PARISC: fix virtual aliasing issue in get_shared_area()
Nov 2, 2012
f561b30
PARISC: fix user-triggerable panic on parisc
Nov 21, 2012
38f6449
mtd: slram: invalid checking of absolute end address
engycz Sep 20, 2012
2d7c6b7
dm: fix deadlock with request based dm and queue request_fn recursion
axboe Nov 6, 2012
beb93b1
futex: avoid wake_futex() for a PI futex_q
dvhart Nov 27, 2012
34ef0d5
mac80211: deinitialize ibss-internals after emptiness check
Nov 13, 2012
399a326
radeon: add AGPMode 1 quirk for RV250
pebolle Nov 19, 2012
f6a8d4c
can: bcm: initialize ifindex for timeouts without previous frame rece…
hartkopp Nov 26, 2012
1c4e871
jbd: Fix lock ordering bug in journal_unmap_buffer()
jankara Nov 23, 2012
bf7ef7e
sparc64: not any error from do_sigaltstack() should fail rt_sigreturn()
Nov 19, 2012
64c94de
ALSA: hda - Add new codec ALC283 ALC290 support
KailangYang Oct 6, 2012
0752069
ALSA: hda - Fix missing beep on ASUS X43U notebook
Oct 10, 2012
bbc0a18
ALSA: hda - Add support for Realtek ALC292
Nov 21, 2012
346f855
bas_gigaset: fix pre_reset handling
tilmanschmidt Oct 24, 2012
344b5bf
ixgbe: add support for X540-AT1
jahay1 Sep 21, 2012
a36eea2
sata_svw: check DMA start bit before reset
Oct 29, 2012
7daba4e
ixgbe: add support for new 82599 device
etantilov Sep 8, 2011
6d4f2ce
ixgbe: add support for new 82599 device id
etantilov Nov 4, 2011
a5c147f
get_dvb_firmware: fix download site for tda10046 firmware
Sep 28, 2012
14179cd
USB: mct_u232: fix broken close
jhovold Oct 25, 2012
872edb5
watchdog: using u64 in get_sample_period()
Chuansheng-Liu Nov 27, 2012
f7118e1
acer-wmi: support for P key on TM8372
merlinschumacher Jan 23, 2012
85f07cc
x86, mce, therm_throt: Don't report power limit and package level the…
fyu1 Nov 4, 2011
8cefc55
Input: bcm5974 - set BUTTONPAD property
Jan 11, 2012
49a66fd
mmc: sdhci-s3c: fix the wrong number of max bus clocks
jh80chung Sep 19, 2012
7cd2d7c
Linux 3.0.54
gregkh Dec 3, 2012
296a041
x86-32: Export kernel_stack_pointer() for modules
Nov 21, 2012
3bbbcb1
Linux 3.0.55
gregkh Dec 6, 2012
31a2aa1
Dove: Attempt to fix PMU/RTC interrupts
Nov 18, 2012
6d62cb3
Dove: Fix irq_to_pmu()
Nov 18, 2012
8bec650
mm/vmemmap: fix wrong use of virt_to_page
Nov 29, 2012
11bcecc
mm: soft offline: split thp at the beginning of soft_offline_page()
Nov 29, 2012
cc3c85d
workqueue: exit rescuer_thread() as TASK_RUNNING
Nov 28, 2012
e86b690
Revert "sched, autogroup: Stop going ahead if autogroup is disabled"
Dec 3, 2012
bc436dd
route: release dst_entry.hh_cache when handling redirects
mkubecek Dec 4, 2012
b0ce22d
ACPI: missing break
Oct 25, 2012
4d574d2
i915: Quirk no_lvds on Gigabyte GA-D525TUD ITX motherboard
kepstin Aug 24, 2012
95b471a
drm/i915: Add no-lvds quirk for Supermicro X7SPA-H
ickle Oct 18, 2012
9012327
scsi: Silence unnecessary warnings about ioctl to partition
jankara Jun 15, 2012
4eb15b7
Linux 3.0.56
gregkh Dec 10, 2012
15a83cc
ARM: 7566/1: vfp: fix save and restore when running on pre-VFPv3 and …
Oct 23, 2012
f2a1abc
powerpc/ptrace: Fix build with gcc 4.6
ozbenh Sep 26, 2011
3ff0aec
workqueue: convert BUG_ON()s in __queue_delayed_work() to WARN_ON_ONC…
htejun Dec 4, 2012
b9f21c2
mm: dmapool: use provided gfp flags for all dma_alloc_coherent() calls
mszyprow Nov 7, 2012
cde5ccf
x86,AMD: Power driver support for AMD's family 16h processors
ostr Dec 5, 2012
d2e0863
telephony: ijx: buffer overflow in ixj_write_cid()
Dec 3, 2012
15487eb
tmpfs: fix shared mempolicy leak
Dec 5, 2012
29a4f06
x86: hpet: Fix masking of MSI interrupts
jbeulich Nov 2, 2012
1d28af1
USB: add new zte 3g-dongle's pid to option.c
Nov 20, 2012
ea337d3
USB: option: blacklist network interface on Huawei E173
bmork Nov 25, 2012
3ffab0b
USB: ftdi_sio: Add support for Newport AGILIS motor drivers
tecki Nov 21, 2012
d57cab5
usb: ftdi_sio: fixup BeagleBone A5+ quirk
jacmet Nov 22, 2012
f1ac973
USB: cp210x: add Virtenio Preon32 device id
markushx Nov 22, 2012
092082a
USB: mark uas driver as BROKEN
gregkh Nov 28, 2012
fd013d7
ACPI / battery: Correct battery capacity values on Thinkpads
Nov 16, 2012
cb2bf59
ACPI / PNP: Do not crash due to stale pointer use during system resume
rafaeljw Nov 30, 2012
ffedea0
ACPI / video: ignore BIOS initial backlight value for HP Folio 13-2000
zhang-rui Dec 4, 2012
e22045d
USB: OHCI: workaround for hardware bug: retired TDs not added to the …
AlanStern Nov 26, 2012
dadc9f9
xhci: Extend Fresco Logic MSI quirk.
Oct 17, 2012
7a09a2f
ftrace: Clear bits properly in reset_iter_read()
Jun 9, 2012
1758e55
powerpc: Update DSCR on all CPUs when writing sysfs dscr_default
antonblanchard Sep 3, 2012
3882a18
powerpc: Keep thread.dscr and thread.dscr_inherit in sync
antonblanchard Sep 3, 2012
881c0a0
Linux 3.0.57
gregkh Dec 17, 2012
5cc0121
Merge branch 'linux-3.0.57' into 3.0.57
zehome Jan 7, 2013
91b575c
Error in conflict merge from 3.0.57
zehome Jan 7, 2013
5da18a7
Add comment to SMSC permanant macaddress for odroid
zehome Jan 7, 2013
b2417fd
Merge branch 'odroid-3.0.y' into odroid-3.0.57
zehome Jan 8, 2013
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Documentation/dvb/get_dvb_firmware
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ sub tda10045 {

sub tda10046 {
my $sourcefile = "TT_PCI_2.19h_28_11_2006.zip";
my $url = "http://www.tt-download.com/download/updates/219/$sourcefile";
my $url = "http://technotrend.com.ua/download/software/219/$sourcefile";
my $hash = "6a7e1e2f2644b162ff0502367553c72d";
my $outfile = "dvb-fe-tda10046.fw";
my $tmpdir = tempdir(DIR => "/tmp", CLEANUP => 1);
Expand Down
2 changes: 2 additions & 0 deletions Documentation/networking/ifenslave.c
Original file line number Diff line number Diff line change
Expand Up @@ -539,12 +539,14 @@ static int if_getconfig(char *ifname)
metric = 0;
} else
metric = ifr.ifr_metric;
printf("The result of SIOCGIFMETRIC is %d\n", metric);

strcpy(ifr.ifr_name, ifname);
if (ioctl(skfd, SIOCGIFMTU, &ifr) < 0)
mtu = 0;
else
mtu = ifr.ifr_mtu;
printf("The result of SIOCGIFMTU is %d\n", mtu);

strcpy(ifr.ifr_name, ifname);
if (ioctl(skfd, SIOCGIFDSTADDR, &ifr) < 0) {
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
VERSION = 3
PATCHLEVEL = 0
SUBLEVEL = 51
SUBLEVEL = 57
EXTRAVERSION =
NAME = Sneaky Weasel

Expand Down
1 change: 1 addition & 0 deletions arch/arm/include/asm/hwcap.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
#define HWCAP_VFPv4 (1 << 16)
#define HWCAP_IDIVA (1 << 17)
#define HWCAP_IDIVT (1 << 18)
#define HWCAP_VFPD32 (1 << 19) /* set if VFP has 32 regs (not 16) */
#define HWCAP_IDIV (HWCAP_IDIVA | HWCAP_IDIVT)

#if defined(__KERNEL__) && !defined(__ASSEMBLY__)
Expand Down
12 changes: 6 additions & 6 deletions arch/arm/include/asm/vfpmacros.h
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@
#if __LINUX_ARM_ARCH__ <= 6
ldr \tmp, =elf_hwcap @ may not have MVFR regs
ldr \tmp, [\tmp, #0]
tst \tmp, #HWCAP_VFPv3D16
ldceql p11, cr0, [\base],#32*4 @ FLDMIAD \base!, {d16-d31}
addne \base, \base, #32*4 @ step over unused register space
tst \tmp, #HWCAP_VFPD32
ldcnel p11, cr0, [\base],#32*4 @ FLDMIAD \base!, {d16-d31}
addeq \base, \base, #32*4 @ step over unused register space
#else
VFPFMRX \tmp, MVFR0 @ Media and VFP Feature Register 0
and \tmp, \tmp, #MVFR0_A_SIMD_MASK @ A_SIMD field
Expand All @@ -51,9 +51,9 @@
#if __LINUX_ARM_ARCH__ <= 6
ldr \tmp, =elf_hwcap @ may not have MVFR regs
ldr \tmp, [\tmp, #0]
tst \tmp, #HWCAP_VFPv3D16
stceql p11, cr0, [\base],#32*4 @ FSTMIAD \base!, {d16-d31}
addne \base, \base, #32*4 @ step over unused register space
tst \tmp, #HWCAP_VFPD32
stcnel p11, cr0, [\base],#32*4 @ FSTMIAD \base!, {d16-d31}
addeq \base, \base, #32*4 @ step over unused register space
#else
VFPFMRX \tmp, MVFR0 @ Media and VFP Feature Register 0
and \tmp, \tmp, #MVFR0_A_SIMD_MASK @ A_SIMD field
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-dove/include/mach/pm.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ static inline int pmu_to_irq(int pin)

static inline int irq_to_pmu(int irq)
{
if (IRQ_DOVE_PMU_START < irq && irq < NR_IRQS)
if (IRQ_DOVE_PMU_START <= irq && irq < NR_IRQS)
return irq - IRQ_DOVE_PMU_START;

return -EINVAL;
Expand Down
14 changes: 13 additions & 1 deletion arch/arm/mach-dove/irq.c
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,20 @@ static void pmu_irq_ack(struct irq_data *d)
int pin = irq_to_pmu(d->irq);
u32 u;

/*
* The PMU mask register is not RW0C: it is RW. This means that
* the bits take whatever value is written to them; if you write
* a '1', you will set the interrupt.
*
* Unfortunately this means there is NO race free way to clear
* these interrupts.
*
* So, let's structure the code so that the window is as small as
* possible.
*/
u = ~(1 << (pin & 31));
writel(u, PMU_INTERRUPT_CAUSE);
u &= readl_relaxed(PMU_INTERRUPT_CAUSE);
writel_relaxed(u, PMU_INTERRUPT_CAUSE);
}

static struct irq_chip pmu_irq_chip = {
Expand Down
9 changes: 6 additions & 3 deletions arch/arm/vfp/vfpmodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -585,11 +585,14 @@ static int __init vfp_init(void)
elf_hwcap |= HWCAP_VFPv3;

/*
* Check for VFPv3 D16. CPUs in this configuration
* only have 16 x 64bit registers.
* Check for VFPv3 D16 and VFPv4 D16. CPUs in
* this configuration only have 16 x 64bit
* registers.
*/
if (((fmrx(MVFR0) & MVFR0_A_SIMD_MASK)) == 1)
elf_hwcap |= HWCAP_VFPv3D16;
elf_hwcap |= HWCAP_VFPv3D16; /* also v4-D16 */
else
elf_hwcap |= HWCAP_VFPD32;
}
#endif
/*
Expand Down
6 changes: 3 additions & 3 deletions arch/m68k/include/asm/signal.h
Original file line number Diff line number Diff line change
Expand Up @@ -156,15 +156,15 @@ typedef struct sigaltstack {
static inline void sigaddset(sigset_t *set, int _sig)
{
asm ("bfset %0{%1,#1}"
: "+od" (*set)
: "+o" (*set)
: "id" ((_sig - 1) ^ 31)
: "cc");
}

static inline void sigdelset(sigset_t *set, int _sig)
{
asm ("bfclr %0{%1,#1}"
: "+od" (*set)
: "+o" (*set)
: "id" ((_sig - 1) ^ 31)
: "cc");
}
Expand All @@ -180,7 +180,7 @@ static inline int __gen_sigismember(sigset_t *set, int _sig)
int ret;
asm ("bfextu %1{%2,#1},%0"
: "=d" (ret)
: "od" (*set), "id" ((_sig-1) ^ 31)
: "o" (*set), "id" ((_sig-1) ^ 31)
: "cc");
return ret;
}
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ KBUILD_CPPFLAGS += -D"DATAOFFSET=$(if $(dataoffset-y),$(dataoffset-y),0)"
LDFLAGS += -m $(ld-emul)

ifdef CONFIG_MIPS
CHECKFLAGS += $(shell $(CC) $(KBUILD_CFLAGS) -dM -E -xc /dev/null | \
CHECKFLAGS += $(shell $(CC) $(KBUILD_CFLAGS) -dM -E -x c /dev/null | \
egrep -vw '__GNUC_(|MINOR_|PATCHLEVEL_)_' | \
sed -e 's/^\#define /-D/' -e "s/ /='/" -e "s/$$/'/")
ifdef CONFIG_64BIT
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/kernel/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ obj-$(CONFIG_MIPS_MACHINE) += mips_machine.o

obj-$(CONFIG_OF) += prom.o

CFLAGS_cpu-bugs64.o = $(shell if $(CC) $(KBUILD_CFLAGS) -Wa,-mdaddi -c -o /dev/null -xc /dev/null >/dev/null 2>&1; then echo "-DHAVE_AS_SET_DADDI"; fi)
CFLAGS_cpu-bugs64.o = $(shell if $(CC) $(KBUILD_CFLAGS) -Wa,-mdaddi -c -o /dev/null -x c /dev/null >/dev/null 2>&1; then echo "-DHAVE_AS_SET_DADDI"; fi)

obj-$(CONFIG_HAVE_STD_PC_SERIAL_PORT) += 8250-platform.o

Expand Down
6 changes: 4 additions & 2 deletions arch/parisc/kernel/signal32.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,8 @@ put_sigset32(compat_sigset_t __user *up, sigset_t *set, size_t sz)
{
compat_sigset_t s;

if (sz != sizeof *set) panic("put_sigset32()");
if (sz != sizeof *set)
return -EINVAL;
sigset_64to32(&s, set);

return copy_to_user(up, &s, sizeof s);
Expand All @@ -79,7 +80,8 @@ get_sigset32(compat_sigset_t __user *up, sigset_t *set, size_t sz)
compat_sigset_t s;
int r;

if (sz != sizeof *set) panic("put_sigset32()");
if (sz != sizeof *set)
return -EINVAL;

if ((r = copy_from_user(&s, up, sz)) == 0) {
sigset_32to64(set, &s);
Expand Down
2 changes: 2 additions & 0 deletions arch/parisc/kernel/sys_parisc.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,8 @@ static unsigned long get_shared_area(struct address_space *mapping,
struct vm_area_struct *vma;
int offset = mapping ? get_offset(mapping) : 0;

offset = (offset + (pgoff << PAGE_SHIFT)) & 0x3FF000;

addr = DCACHE_ALIGN(addr - offset) + offset;

for (vma = find_vma(current->mm, addr); ; vma = vma->vm_next) {
Expand Down
18 changes: 14 additions & 4 deletions arch/powerpc/kernel/ptrace.c
Original file line number Diff line number Diff line change
Expand Up @@ -1497,9 +1497,14 @@ long arch_ptrace(struct task_struct *child, long request,
if (index < PT_FPR0) {
tmp = ptrace_get_reg(child, (int) index);
} else {
unsigned int fpidx = index - PT_FPR0;

flush_fp_to_thread(child);
tmp = ((unsigned long *)child->thread.fpr)
[TS_FPRWIDTH * (index - PT_FPR0)];
if (fpidx < (PT_FPSCR - PT_FPR0))
tmp = ((unsigned long *)child->thread.fpr)
[fpidx * TS_FPRWIDTH];
else
tmp = child->thread.fpscr.val;
}
ret = put_user(tmp, datalp);
break;
Expand All @@ -1525,9 +1530,14 @@ long arch_ptrace(struct task_struct *child, long request,
if (index < PT_FPR0) {
ret = ptrace_put_reg(child, index, data);
} else {
unsigned int fpidx = index - PT_FPR0;

flush_fp_to_thread(child);
((unsigned long *)child->thread.fpr)
[TS_FPRWIDTH * (index - PT_FPR0)] = data;
if (fpidx < (PT_FPSCR - PT_FPR0))
((unsigned long *)child->thread.fpr)
[fpidx * TS_FPRWIDTH] = data;
else
child->thread.fpscr.val = data;
ret = 0;
}
break;
Expand Down
10 changes: 10 additions & 0 deletions arch/powerpc/kernel/sysfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,14 @@ static ssize_t show_dscr_default(struct sysdev_class *class,
return sprintf(buf, "%lx\n", dscr_default);
}

static void update_dscr(void *dummy)
{
if (!current->thread.dscr_inherit) {
current->thread.dscr = dscr_default;
mtspr(SPRN_DSCR, dscr_default);
}
}

static ssize_t __used store_dscr_default(struct sysdev_class *class,
struct sysdev_class_attribute *attr, const char *buf,
size_t count)
Expand All @@ -204,6 +212,8 @@ static ssize_t __used store_dscr_default(struct sysdev_class *class,
return -EINVAL;
dscr_default = val;

on_each_cpu(update_dscr, NULL, 1);

return count;
}

Expand Down
3 changes: 2 additions & 1 deletion arch/powerpc/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -935,8 +935,9 @@ static int emulate_instruction(struct pt_regs *regs)
cpu_has_feature(CPU_FTR_DSCR)) {
PPC_WARN_EMULATED(mtdscr, regs);
rd = (instword >> 21) & 0x1f;
mtspr(SPRN_DSCR, regs->gpr[rd]);
current->thread.dscr = regs->gpr[rd];
current->thread.dscr_inherit = 1;
mtspr(SPRN_DSCR, current->thread.dscr);
return 0;
}
#endif
Expand Down
2 changes: 1 addition & 1 deletion arch/s390/mm/gup.c
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,
addr = start;
len = (unsigned long) nr_pages << PAGE_SHIFT;
end = start + len;
if (end < start)
if ((end < start) || (end > TASK_SIZE))
goto slow_irqon;

/*
Expand Down
4 changes: 1 addition & 3 deletions arch/sparc/kernel/signal_64.c
Original file line number Diff line number Diff line change
Expand Up @@ -309,9 +309,7 @@ void do_rt_sigreturn(struct pt_regs *regs)
err |= restore_fpu_state(regs, fpu_save);

err |= __copy_from_user(&set, &sf->mask, sizeof(sigset_t));
err |= do_sigaltstack(&sf->stack, NULL, (unsigned long)sf);

if (err)
if (err || do_sigaltstack(&sf->stack, NULL, (unsigned long)sf) == -EFAULT)
goto segv;

err |= __get_user(rwin_save, &sf->rwin_save);
Expand Down
15 changes: 4 additions & 11 deletions arch/x86/include/asm/ptrace.h
Original file line number Diff line number Diff line change
Expand Up @@ -187,21 +187,14 @@ static inline int v8086_mode(struct pt_regs *regs)
#endif
}

/*
* X86_32 CPUs don't save ss and esp if the CPU is already in kernel mode
* when it traps. The previous stack will be directly underneath the saved
* registers, and 'sp/ss' won't even have been saved. Thus the '&regs->sp'.
*
* This is valid only for kernel mode traps.
*/
static inline unsigned long kernel_stack_pointer(struct pt_regs *regs)
{
#ifdef CONFIG_X86_32
return (unsigned long)(&regs->sp);
extern unsigned long kernel_stack_pointer(struct pt_regs *regs);
#else
static inline unsigned long kernel_stack_pointer(struct pt_regs *regs)
{
return regs->sp;
#endif
}
#endif

#define GET_IP(regs) ((regs)->ip)
#define GET_FP(regs) ((regs)->bp)
Expand Down
29 changes: 7 additions & 22 deletions arch/x86/kernel/cpu/mcheck/therm_throt.c
Original file line number Diff line number Diff line change
Expand Up @@ -322,17 +322,6 @@ device_initcall(thermal_throttle_init_device);

#endif /* CONFIG_SYSFS */

/*
* Set up the most two significant bit to notify mce log that this thermal
* event type.
* This is a temp solution. May be changed in the future with mce log
* infrasture.
*/
#define CORE_THROTTLED (0)
#define CORE_POWER_LIMIT ((__u64)1 << 62)
#define PACKAGE_THROTTLED ((__u64)2 << 62)
#define PACKAGE_POWER_LIMIT ((__u64)3 << 62)

static void notify_thresholds(__u64 msr_val)
{
/* check whether the interrupt handler is defined;
Expand Down Expand Up @@ -362,27 +351,23 @@ static void intel_thermal_interrupt(void)
if (therm_throt_process(msr_val & THERM_STATUS_PROCHOT,
THERMAL_THROTTLING_EVENT,
CORE_LEVEL) != 0)
mce_log_therm_throt_event(CORE_THROTTLED | msr_val);
mce_log_therm_throt_event(msr_val);

if (this_cpu_has(X86_FEATURE_PLN))
if (therm_throt_process(msr_val & THERM_STATUS_POWER_LIMIT,
therm_throt_process(msr_val & THERM_STATUS_POWER_LIMIT,
POWER_LIMIT_EVENT,
CORE_LEVEL) != 0)
mce_log_therm_throt_event(CORE_POWER_LIMIT | msr_val);
CORE_LEVEL);

if (this_cpu_has(X86_FEATURE_PTS)) {
rdmsrl(MSR_IA32_PACKAGE_THERM_STATUS, msr_val);
if (therm_throt_process(msr_val & PACKAGE_THERM_STATUS_PROCHOT,
therm_throt_process(msr_val & PACKAGE_THERM_STATUS_PROCHOT,
THERMAL_THROTTLING_EVENT,
PACKAGE_LEVEL) != 0)
mce_log_therm_throt_event(PACKAGE_THROTTLED | msr_val);
PACKAGE_LEVEL);
if (this_cpu_has(X86_FEATURE_PLN))
if (therm_throt_process(msr_val &
therm_throt_process(msr_val &
PACKAGE_THERM_STATUS_POWER_LIMIT,
POWER_LIMIT_EVENT,
PACKAGE_LEVEL) != 0)
mce_log_therm_throt_event(PACKAGE_POWER_LIMIT
| msr_val);
PACKAGE_LEVEL);
}
}

Expand Down
4 changes: 2 additions & 2 deletions arch/x86/kernel/hpet.c
Original file line number Diff line number Diff line change
Expand Up @@ -427,7 +427,7 @@ void hpet_msi_unmask(struct irq_data *data)

/* unmask it */
cfg = hpet_readl(HPET_Tn_CFG(hdev->num));
cfg |= HPET_TN_FSB;
cfg |= HPET_TN_ENABLE | HPET_TN_FSB;
hpet_writel(cfg, HPET_Tn_CFG(hdev->num));
}

Expand All @@ -438,7 +438,7 @@ void hpet_msi_mask(struct irq_data *data)

/* mask it */
cfg = hpet_readl(HPET_Tn_CFG(hdev->num));
cfg &= ~HPET_TN_FSB;
cfg &= ~(HPET_TN_ENABLE | HPET_TN_FSB);
hpet_writel(cfg, HPET_Tn_CFG(hdev->num));
}

Expand Down
4 changes: 4 additions & 0 deletions arch/x86/kernel/microcode_amd.c
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,7 @@ static unsigned int verify_ucode_size(int cpu, const u8 *buf, unsigned int size)
#define F1XH_MPB_MAX_SIZE 2048
#define F14H_MPB_MAX_SIZE 1824
#define F15H_MPB_MAX_SIZE 4096
#define F16H_MPB_MAX_SIZE 3458

switch (c->x86) {
case 0x14:
Expand All @@ -170,6 +171,9 @@ static unsigned int verify_ucode_size(int cpu, const u8 *buf, unsigned int size)
case 0x15:
max_size = F15H_MPB_MAX_SIZE;
break;
case 0x16:
max_size = F16H_MPB_MAX_SIZE;
break;
default:
max_size = F1XH_MPB_MAX_SIZE;
break;
Expand Down
Loading