From: David Woodhouse Date: Wed, 24 May 2006 08:22:21 +0000 (+0100) Subject: Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 X-Git-Tag: v2.6.18-rc1~1103^2~3 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=66643de455c27973ac31ad6de9f859d399916842;p=linux-2.6 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 Conflicts: include/asm-powerpc/unistd.h include/asm-sparc/unistd.h include/asm-sparc64/unistd.h Signed-off-by: David Woodhouse --- 66643de455c27973ac31ad6de9f859d399916842 diff --cc include/asm-powerpc/unistd.h index 9e2c9e1c12,edde2462bf..eb66eae661 --- a/include/asm-powerpc/unistd.h +++ b/include/asm-powerpc/unistd.h @@@ -321,13 -321,15 +321,15 @@@ #define __NR_readlinkat 296 #define __NR_fchmodat 297 #define __NR_faccessat 298 + #define __NR_get_robust_list 299 + #define __NR_set_robust_list 300 +#ifdef __KERNEL__ + - #define __NR_syscalls 299 + #define __NR_syscalls 301 -#ifdef __KERNEL__ #define __NR__exit __NR_exit #define NR_syscalls __NR_syscalls -#endif #ifndef __ASSEMBLY__ diff --cc include/asm-sparc/unistd.h index 5489c5a3c7,45a5765077..2553762465 --- a/include/asm-sparc/unistd.h +++ b/include/asm-sparc/unistd.h @@@ -316,12 -316,13 +316,14 @@@ #define __NR_pselect6 297 #define __NR_ppoll 298 #define __NR_unshare 299 + #define __NR_set_robust_list 300 + #define __NR_get_robust_list 301 +#ifdef __KERNEL__ - /* WARNING: You MAY NOT add syscall numbers larger than 299, since + /* WARNING: You MAY NOT add syscall numbers larger than 301, since * all of the syscall tables in the Sparc kernel are - * sized to have 299 entries (starting at zero). Therefore - * find a free slot in the 0-299 range. + * sized to have 301 entries (starting at zero). Therefore + * find a free slot in the 0-301 range. */ #define _syscall0(type,name) \ diff --cc include/asm-sparc64/dma-mapping.h index c902a96d1d,a8d39f23d4..3c2b5bc865 --- a/include/asm-sparc64/dma-mapping.h +++ b/include/asm-sparc64/dma-mapping.h @@@ -1,9 -1,149 +1,148 @@@ #ifndef _ASM_SPARC64_DMA_MAPPING_H #define _ASM_SPARC64_DMA_MAPPING_H -#include #ifdef CONFIG_PCI - #include + + /* we implement the API below in terms of the existing PCI one, + * so include it */ + #include + /* need struct page definitions */ + #include + + static inline int + dma_supported(struct device *dev, u64 mask) + { + BUG_ON(dev->bus != &pci_bus_type); + + return pci_dma_supported(to_pci_dev(dev), mask); + } + + static inline int + dma_set_mask(struct device *dev, u64 dma_mask) + { + BUG_ON(dev->bus != &pci_bus_type); + + return pci_set_dma_mask(to_pci_dev(dev), dma_mask); + } + + static inline void * + dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *dma_handle, + gfp_t flag) + { + BUG_ON(dev->bus != &pci_bus_type); + + return pci_iommu_ops->alloc_consistent(to_pci_dev(dev), size, dma_handle, flag); + } + + static inline void + dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, + dma_addr_t dma_handle) + { + BUG_ON(dev->bus != &pci_bus_type); + + pci_free_consistent(to_pci_dev(dev), size, cpu_addr, dma_handle); + } + + static inline dma_addr_t + dma_map_single(struct device *dev, void *cpu_addr, size_t size, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + return pci_map_single(to_pci_dev(dev), cpu_addr, size, (int)direction); + } + + static inline void + dma_unmap_single(struct device *dev, dma_addr_t dma_addr, size_t size, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + pci_unmap_single(to_pci_dev(dev), dma_addr, size, (int)direction); + } + + static inline dma_addr_t + dma_map_page(struct device *dev, struct page *page, + unsigned long offset, size_t size, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + return pci_map_page(to_pci_dev(dev), page, offset, size, (int)direction); + } + + static inline void + dma_unmap_page(struct device *dev, dma_addr_t dma_address, size_t size, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + pci_unmap_page(to_pci_dev(dev), dma_address, size, (int)direction); + } + + static inline int + dma_map_sg(struct device *dev, struct scatterlist *sg, int nents, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + return pci_map_sg(to_pci_dev(dev), sg, nents, (int)direction); + } + + static inline void + dma_unmap_sg(struct device *dev, struct scatterlist *sg, int nhwentries, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + pci_unmap_sg(to_pci_dev(dev), sg, nhwentries, (int)direction); + } + + static inline void + dma_sync_single_for_cpu(struct device *dev, dma_addr_t dma_handle, size_t size, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + pci_dma_sync_single_for_cpu(to_pci_dev(dev), dma_handle, + size, (int)direction); + } + + static inline void + dma_sync_single_for_device(struct device *dev, dma_addr_t dma_handle, size_t size, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + pci_dma_sync_single_for_device(to_pci_dev(dev), dma_handle, + size, (int)direction); + } + + static inline void + dma_sync_sg_for_cpu(struct device *dev, struct scatterlist *sg, int nelems, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + pci_dma_sync_sg_for_cpu(to_pci_dev(dev), sg, nelems, (int)direction); + } + + static inline void + dma_sync_sg_for_device(struct device *dev, struct scatterlist *sg, int nelems, + enum dma_data_direction direction) + { + BUG_ON(dev->bus != &pci_bus_type); + + pci_dma_sync_sg_for_device(to_pci_dev(dev), sg, nelems, (int)direction); + } + + static inline int + dma_mapping_error(dma_addr_t dma_addr) + { + return pci_dma_mapping_error(dma_addr); + } + #else struct device; diff --cc include/asm-sparc64/unistd.h index a73b7ce1a0,998ef4ab0e..badc73fdcb --- a/include/asm-sparc64/unistd.h +++ b/include/asm-sparc64/unistd.h @@@ -318,12 -318,13 +318,14 @@@ #define __NR_pselect6 297 #define __NR_ppoll 298 #define __NR_unshare 299 + #define __NR_set_robust_list 300 + #define __NR_get_robust_list 301 +#ifdef __KERNEL__ - /* WARNING: You MAY NOT add syscall numbers larger than 299, since + /* WARNING: You MAY NOT add syscall numbers larger than 301, since * all of the syscall tables in the Sparc kernel are - * sized to have 299 entries (starting at zero). Therefore - * find a free slot in the 0-299 range. + * sized to have 301 entries (starting at zero). Therefore + * find a free slot in the 0-301 range. */ #define _syscall0(type,name) \ diff --cc include/linux/syscalls.h index 70c64dbe4b,60d49e5456..bd67a4413d --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h @@@ -52,7 -52,9 +52,8 @@@ struct utimbuf struct mq_attr; struct compat_stat; struct compat_timeval; + struct robust_list_head; -#include #include #include #include