mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-18 11:54:37 +08:00
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc64: Fix PCI resource mapping on sparc64 sparc64: Kill annoying warning when building compat_binfmt_elf.o sparc32: kernel/trace/trace.c wants DIE_OOPS sparc64: Fix __copy_{to,from}_user_inatomic defines.
This commit is contained in:
commit
0bf82cccd1
@ -36,10 +36,10 @@
|
|||||||
#define VPTE_SIZE (1 << (VA_BITS - PAGE_SHIFT + 3))
|
#define VPTE_SIZE (1 << (VA_BITS - PAGE_SHIFT + 3))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define TASK_SIZE ((unsigned long)-VPTE_SIZE)
|
|
||||||
#define TASK_SIZE_OF(tsk) \
|
#define TASK_SIZE_OF(tsk) \
|
||||||
(test_tsk_thread_flag(tsk,TIF_32BIT) ? \
|
(test_tsk_thread_flag(tsk,TIF_32BIT) ? \
|
||||||
(1UL << 32UL) : TASK_SIZE)
|
(1UL << 32UL) : ((unsigned long)-VPTE_SIZE))
|
||||||
|
#define TASK_SIZE TASK_SIZE_OF(current)
|
||||||
#ifdef __KERNEL__
|
#ifdef __KERNEL__
|
||||||
|
|
||||||
#define STACK_TOP32 ((1UL << 32UL) - PAGE_SIZE)
|
#define STACK_TOP32 ((1UL << 32UL) - PAGE_SIZE)
|
||||||
|
@ -265,8 +265,8 @@ extern long __strnlen_user(const char __user *, long len);
|
|||||||
|
|
||||||
#define strlen_user __strlen_user
|
#define strlen_user __strlen_user
|
||||||
#define strnlen_user __strnlen_user
|
#define strnlen_user __strnlen_user
|
||||||
#define __copy_to_user_inatomic __copy_to_user
|
#define __copy_to_user_inatomic ___copy_to_user
|
||||||
#define __copy_from_user_inatomic __copy_from_user
|
#define __copy_from_user_inatomic ___copy_from_user
|
||||||
|
|
||||||
#endif /* __ASSEMBLY__ */
|
#endif /* __ASSEMBLY__ */
|
||||||
|
|
||||||
|
@ -889,6 +889,7 @@ static int __pci_mmap_make_offset(struct pci_dev *pdev,
|
|||||||
|
|
||||||
for (i = 0; i <= PCI_ROM_RESOURCE; i++) {
|
for (i = 0; i <= PCI_ROM_RESOURCE; i++) {
|
||||||
struct resource *rp = &pdev->resource[i];
|
struct resource *rp = &pdev->resource[i];
|
||||||
|
resource_size_t aligned_end;
|
||||||
|
|
||||||
/* Active? */
|
/* Active? */
|
||||||
if (!rp->flags)
|
if (!rp->flags)
|
||||||
@ -906,8 +907,15 @@ static int __pci_mmap_make_offset(struct pci_dev *pdev,
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Align the resource end to the next page address.
|
||||||
|
* PAGE_SIZE intentionally added instead of (PAGE_SIZE - 1),
|
||||||
|
* because actually we need the address of the next byte
|
||||||
|
* after rp->end.
|
||||||
|
*/
|
||||||
|
aligned_end = (rp->end + PAGE_SIZE) & PAGE_MASK;
|
||||||
|
|
||||||
if ((rp->start <= user_paddr) &&
|
if ((rp->start <= user_paddr) &&
|
||||||
(user_paddr + user_size) <= (rp->end + 1UL))
|
(user_paddr + user_size) <= aligned_end)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user