23 Apr, 2006
16 commits
-
The driver for the next generation of TPM chips version 1.2 including support
for interrupts. The Trusted Computing Group has written the TPM Interface
Specification (TIS) which defines a common interface for all manufacturer's
1.2 TPM's thus the name tpm_tis.Signed-off-by: Leendert van Doorn
Signed-off-by: Kylene Hall
Cc: Greg KH
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Many of the sysfs files were calling the TPM_GetCapability command with array.
Since for 1.2 more sysfs files of this type are coming I am generalizing the
array so there can be one array and the unique parts can be filled in just
before the command is called.This updated version of the patch breaks the multi-value sysfs file into
separate files pointed out by Greg. It also addresses the code redundancy and
ugliness in the tpm_show_* functions pointed out on another patch by Dave
Hansen.Signed-off-by: Kylene Hall
Cc: Greg KH
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
With the TPM 1.2 Specification, each command is classified as short, medium or
long and the chip tells you the maximum amount of time for a response to each
class of command. This patch provides and array of the classifications and a
function to determine how long the response should be waited for. Also, it
uses that information in the command processing to determine how long to poll
for. The function is exported so the 1.2 driver can use the functionality to
determine how long to wait for a DataAvailable interrupt if interrupts are
being used.Signed-off-by: Kylene Hall
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Changes in the 1.2 TPM Specification make it necessary to update some fields
of the chip structure in the initialization function after it is registered
with tpm.c thus tpm_register_hardware was modified to return a pointer to the
structure. This patch makes that change and the associated changes in
tpm_atmel and tpm_nsc. The changes to tpm_infineon will be coming in a patch
from Marcel Selhorst.Signed-off-by: Kylene Hall
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
To assist with chip management and better support the possibility of having
multiple TPMs in the system of the same kind, the struct tpm_vendor_specific
member of the tpm_chip was changed from a pointer to an instance. This patch
changes that declaration and fixes up all accesses to the structure member
except in tpm_infineon which is coming in a patch from Marcel Selhorst.Signed-off-by: Kylene Hall
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Many of the sysfs files were calling the TPM_GetCapability command with array.
Since for 1.2 more sysfs files of this type are coming I am generalizing the
array so there can be one array and the unique parts can be filled in just
before the command is called.Signed-off-by: Kylene Hall
Cc: Greg KH
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The following patch set contains numerous changes to the base tpm driver
(tpm.c) to support the next generation of TPM chips. The changes include new
sysfs files because of more relevant data being available, a function to
access the timeout and duration values for the chip, and changes to make use
of those duration values. Duration in the TPM specification is defined as the
maximum amount of time the chip could take to return the results. Commands
are in one of three categories short, medium and long. Also included are
cleanups of how the commands for the sysfs files are composed to reduce a
bunch of redundant arrays.This patch:
Fix minor spacing issues.
Signed-off-by: Kylene Hall
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
A string corresponding to the tcpa_pc_event_id POST_CONTENTS was missing
causing an overflow bug when access was attempted in the get_event_name
function.This bug was found by Coverity.
Signed-off-by: Kylene Hall
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
The eventname was kmalloc'd and not freed in the *_show functions.
This bug was found by Coverity.
Signed-off-by: Kylene Hall
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
reiserfs_cache_default_acl() should return whether we successfully found
the acl or not. We have to return correct value even if reiserfs_get_acl()
returns error code and not just 0. Otherwise callers such as
reiserfs_mkdir() can unnecessarily lock the xattrs and later functions such
as reiserfs_new_inode() fail to notice that we have already taken the lock
and try to take it again with obvious consequences.Signed-off-by: Jan Kara
Cc:
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
from: Greg Howard
Fix Altix system controller (snsc) device names to include the slot number
of the blade whose associated system controller is the target of the device
interface. Including the slot number avoids a problem we're currently
having where slots within the same enclosure are attempting to create
multiple kobjects with identical names.Signed-off-by: Greg Howard
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
We do this by removing a micro-optimization that tries to avoid grabbing
the iommu_bitmap_lock spinlock and using a bus-locked operation.This still races with other simultaneous alloc_iommu or free_iommu(size >
1) which both use bus-unlocked operations.The end result of this race is eventually ending up with an
iommu_gart_bitmap that has bits errornously set all over, making large
contiguous iommu space allocations fail with 'PCI-DMA: Out of IOMMU space'.Signed-off-by: Mike Waychison
Signed-off-by: Andi Kleen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This quietens warnings and actually fixes a bug. The unwind tables would
come out wrong without -32, causing pthread cancellation during them to
crash in the gcc runtime.The problem seems to only happen with newer binutils (it doesn't happen
with 2.16.91.0.2 but happens wit 2.16.91.0.5)Thanks to David Altobelli and Brian Baker
for test case and initial analysis.Signed-off-by: Andi Kleen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Basic problem: pages of a shared memory segment can only be migrated once.
In 2.6.16 through 2.6.17-rc1, shared memory mappings do not have a
migratepage address space op. Therefore, migrate_pages() falls back to
default processing. In this path, it will try to pageout() dirty pages.
Once a shared memory page has been migrated it becomes dirty, so
migrate_pages() will try to page it out. However, because the page count
is 3 [cache + current + pte], pageout() will return PAGE_KEEP because
is_page_cache_freeable() returns false. This will abort all subsequent
migrations.This patch adds a migratepage address space op to shared memory segments to
avoid taking the default path. We use the "migrate_page()" function
because it knows how to migrate dirty pages. This allows shared memory
segment pages to migrate, subject to other conditions such as # pte's
referencing the page [page_mapcount(page)], when requested.I think this is safe. If we're migrating a shared memory page, then we
found the page via a page table, so it must be in memory.Can be verified with memtoy and the shmem-mbind-test script, both
available at: http://free.linux.hp.com/~lts/Tools/Signed-off-by: Lee Schermerhorn
Acked-by: Christoph Lameter
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Seems we are trying to init the node_mem_map when we don't need to, for
example when SPARSEMEM is enabled. This causes the error below during
compilation. Use CONFIG_FLAT_NODE_MEM_MAP to gate allocation and init.arch/x86_64/mm/numa.c: In function `setup_node_zones':
arch/x86_64/mm/numa.c:191: error: structure has no member
named `node_mem_map'Signed-off-by: Andy Whitcroft
Acked-by: Andi Kleen
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Fix a possible Oops in the Siemens Gigaset base driver when the device is
unplugged while an ISDN connection is still active, and makes sure that the
isdn4linux link level (LL) is properly informed if a connection is broken
by the USB cable being unplugged.- Avoid unsafe checks of URB status fields outside the URB completion
handlers, keep track of in-use URBs myself instead.- If an isochronous transfer URB completes with status==0, also check the
status of the frame descriptors.- Verify length of interrupt messages received from the device.
- Align the length limit on transmitted AT commands with the device
documentation.- In case of AT response receive overrun, keep newly arrived instead of old
unread data.- Remove redundant check of device ID in the USB probe function.
- Correct and improve some comments and formatting.
Signed-off-by: Tilman Schmidt
Acked-by: Hansjoerg Lipp
Cc: Karsten Keil
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
21 Apr, 2006
11 commits
-
* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (21 commits)
[PATCH] wext: Fix RtNetlink ENCODE security permissions
[PATCH] bcm43xx: iw_priv_args names should be <16 characters
[PATCH] bcm43xx: sysfs code cleanup
[PATCH] bcm43xx: fix pctl slowclock limit calculation
[PATCH] bcm43xx: fix dyn tssi2dbm memleak
[PATCH] bcm43xx: fix config menu alignment
[PATCH] bcm43xx wireless: fix printk format warnings
[PATCH] softmac: report when scanning has finished
[PATCH] softmac: fix event sending
[PATCH] softmac: handle iw_mode properly
[PATCH] softmac: dont send out packets while scanning
[PATCH] softmac: return -EAGAIN from getscan while scanning
[PATCH] bcm43xx: set trans_start on TX to prevent bogus timeouts
[PATCH] orinoco: fix truncating commsquality RID with the latest Symbol firmware
[PATCH] softmac: fix spinlock recursion on reassoc
[PATCH] Revert NET_RADIO Kconfig title change
[PATCH] wext: Fix IWENCODEEXT security permissions
[PATCH] wireless/atmel: send WEXT scan completion events
[PATCH] wireless/airo: clean up WEXT association and scan events
[PATCH] softmac uses Wiress Ext.
... -
* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
[EBTABLES]: Clean up vmalloc usage in net/bridge/netfilter/ebtables.c
[NET]: Add skb->truesize assertion checking.
[TCP]: Account skb overhead in tcp_fragment
[SUNGEM]: Marvell PHY suspend.
[LLC]: Use pskb_trim_rcsum() in llc_fixup_skb().
[NET]: sockfd_lookup_light() returns random error for -EBADFD -
* master.kernel.org:/home/rmk/linux-2.6-arm:
[ARM] for_each_possible_cpu
[ARM] add_memory() build fix
[ARM] 3483/1: ixp23xx: update defconfig to 2.6.17-rc2
[ARM] 3482/1: ixp2000: update defconfig to 2.6.17-rc2
[ARM] 3481/1: ep93xx: update defconfig to 2.6.17-rc2
[ARM] 3480/1: ixp4xx: fix irq2gpio array type -
Correct the base address of the Realtek RTL8019AS chip on the Toshiba RBTX4938
board -- this should make the driver work at least when CONFIG_PCI is enabled.Signed-off-by: Yuri Shpilevsky
Signed-off-by: Sergei Shtylyov
Signed-off-by: Jeff Garzik -
for_each_cpu() actually iterates across all possible CPUs. We've had mistakes
in the past where people were using for_each_cpu() where they should have been
iterating across only online or present CPUs. This is inefficient and
possibly buggy.We're renaming for_each_cpu() to for_each_possible_cpu() to avoid this in the
future.This patch replaces for_each_cpu with for_each_possible_cpu.
Signed-off-by: KAMEZAWA Hiroyuki
Signed-off-by: Andrew Morton
Signed-off-by: Russell King -
This is back again. Offending patch is x86_64-mm-hotadd-reserve.patch
arch/arm/kernel/setup.c:435: error: conflicting types for 'add_memory'
include/linux/memory_hotplug.h:102: error: previous declaration of 'add_memory' was here
arch/arm/kernel/setup.c:435: error: conflicting types for 'add_memory'
include/linux/memory_hotplug.h:102: error: previous declaration of 'add_memory' was hereSigned-off-by: Andrew Morton
Signed-off-by: Russell King -
Patch from Lennert Buytenhek
Signed-off-by: Lennert Buytenhek
Signed-off-by: Russell King -
Patch from Lennert Buytenhek
Signed-off-by: Lennert Buytenhek
Signed-off-by: Russell King -
Patch from Lennert Buytenhek
Signed-off-by: Lennert Buytenhek
Signed-off-by: Russell King -
Patch from Lennert Buytenhek
The irq2gpio array was recently converted from an array of ints to an
array of chars (by patch 3368/1.) However, this array contains elements
that are -1, and on ARM, the char type is unsigned by default, so this
patch broke the GPIO check in ixp4xx_set_irq_type.Change the 'char' to be a 'signed char' to fix this.
Signed-off-by: Lennert Buytenhek
Signed-off-by: Deepak Saxena
Signed-off-by: Russell King
20 Apr, 2006
13 commits
-
* 'for-linus' of git://brick.kernel.dk/data/git/linux-2.6-block:
[PATCH] block/elevator.c: remove unused exports
[PATCH] splice: fix smaller sized splice reads
[PATCH] Don't inherit ->splice_pipe across forks
[patch] cleanup: use blk_queue_stopped
[PATCH] Document online io scheduler switching -
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
[SPARC]: __NR_sys_splice --> __NR_splice -
It seems latest kernel has a wrong/missing __read_mostly implementation
for x86_64__read_mostly macro should be declared outside of #if CONFIG_X86_VSMP block
Signed-off-by: Eric Dumazet
Signed-off-by: Andi Kleen
Signed-off-by: Linus Torvalds -
AMD K7/K8 CPUs only save/restore the FOP/FIP/FDP x87 registers in FXSAVE
when an exception is pending. This means the value leak through
context switches and allow processes to observe some x87 instruction
state of other processes.This was actually documented by AMD, but nobody recognized it as
being different from Intel before.The fix first adds an optimization: instead of unconditionally
calling FNCLEX after each FXSAVE test if ES is pending and skip
it when not needed. Then do a x87 load from a kernel variable to
clear FOP/FIP/FDP.This means other processes always will only see a constant value
defined by the kernel in their FP state.I took some pain to make sure to chose a variable that's already
in L1 during context switch to make the overhead of this low.Also alternative() is used to patch away the new code on CPUs
who don't need it.Patch for both i386/x86-64.
The problem was discovered originally by Jan Beulich. Richard
Brunner provided the basic code for the workarounds, with contribution
from Jan.This is CVE-2006-1056
Cc: richard.brunner@amd.com
Cc: jbeulich@novell.comSigned-off-by: Andi Kleen
Signed-off-by: Linus Torvalds -
- fix mddev_lock() usage bugs in md_attr_show() and md_attr_store().
[they did not anticipate the possibility of getting a signal]- remove mddev_lock_uninterruptible() [unused]
Signed-off-by: Ingo Molnar
Acked-by: Neil Brown
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
We don't have to #if guard prototypes.
This also fixes a bug observed by Randy Dunlap due to a misspelled
option in the #if.Signed-off-by: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
There was a report of a regression in the ALSA driver for the same
hardware.Signed-off-by: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Update the schedule for the removal of drivers depending on
OBSOLETE_OSS_DRIVER as follows:- adjust OBSOLETE_OSS_DRIVER dependencie
- from the release of 2.6.16 till the release of 2.6.17:
approx. two months for users to report problems with the ALSA
drivers for the same hardware
- after the release of 2.6.17 (and before 2.6.18):
remove the subset of drivers marked at OBSOLETE_OSS_DRIVER without
known regressions in the ALSA drivers for the same hardwareAdditionally, correct some OBSOLETE_OSS_DRIVER dependencies.
A rationale of the changes is in
http://lkml.org/lkml/2006/1/28/135Signed-off-by: Adrian Bunk
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Add a test to detect the ICH7 based Core Duo SONY laptops (such as the SZ1)
as type3 models.Signed-off-by: Arnaud MAZIN < arnaud.mazin@gmail.com>
Acked-by: Stelian Pop
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
This fixes a hang in mpu401_uart.c that can occur when the mpu401 interface
is non-existent or otherwise doesn't respond to commands but we issue IO
anyway. snd_mpu401_uart_cmd now returns an error code that is passed up
the stack so that an open() will fail immediately in such cases.Eventually discovered after wine/cxoffice would constantly cause hard
lockups on my desktop immediately after loading (emulating Windows too
well). Turned out that I'd recently moved my sound cards around and using
/dev/sequencer now talks to a sound card with a broken MPU.This second version changes -EFAULT to -EIO and frees open resources on
error too. Test booted and seems to work ok.Signed-off-by: Jon Masters
Cc: Jaroslav Kysela
Acked-by: Takashi Iwai
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Fix for bug #6395:
Fail to resume on Tecra M2 with ADM1032 and Intel 82801DBM
The BIOS of the Tecra M2 doesn't like it when it has to reboot or resume
after the i2c-i801 driver has left the SMBus in PEC mode. The most simple
fix is to clear the PEC bit after after every transaction. That's what
this driver was doing up to 2.6.15 (inclusive).Thanks to Daniele Gaffuri for the very good report.
Signed-off-by: Jean Delvare
Cc: Greg KH
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
On the MSI-K8T-NEO2 FIR ( Athlon-64, Socket 939 with VIA-K8T800- Chipset
and onboard Sound,... ) the BIOS lets you choose "DISABLED" or "AUTO" for
the On-Board Sound Device.If you add another PCI-Sound-Card the BIOS disables the on-board device.
So far I have a Quirk, that does set the correspondent BIT in the
PCI-registers to enable the soundcard.But how to ensure that the code is executed ONLY on excactly this kind of
boards (not any other with similar Chipset)?Cc: Jaroslav Kysela
Acked-by: Takashi Iwai
Cc: Lee Revell
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds -
Remove the dependence on the async_icount structure in the TIOCGICOUNT
macro for Xtensa. (Thanks Russell and Adrian for pointing this out)Signed-off-by: Chris Zankel
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds