summaryrefslogtreecommitdiffstats
path: root/fs/notify
Commit message (Expand)AuthorAgeFilesLines
* fanotify: fix missing breakEric Paris2012-11-091-0/+1
* switch simple cases of fget_light to fdgetAl Viro2012-09-272-29/+27Star
* fanotify: sanitize failure exits in copy_event_to_user()Al Viro2012-09-271-39/+20Star
* switch dentry_open() to struct path, make it grab references itselfAl Viro2012-07-221-6/+2Star
* vfs: switch i_dentry/d_alias to hlistAl Viro2012-07-141-1/+2
* fsnotify: remove unused parameter from send_to_group()Dan Carpenter2012-05-311-6/+6
* fs/notify/notification.c: make subsys_initcall function staticH Hartley Sweeten2012-03-241-2/+1Star
* fsnotify: don't BUG in fsnotify_destroy_mark()Miklos Szeredi2012-01-151-3/+5
* vfs: move fsnotify junk to struct mountAl Viro2012-01-043-13/+21
* atomic: use <linux/atomic.h>Arun Sharma2011-07-275-5/+5
* Merge branch 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6Linus Torvalds2011-04-073-3/+3
|\
| * Fix common misspellingsLucas De Marchi2011-03-313-3/+3
* | inotify: fix double free/corruption of stuct userEric Paris2011-04-062-26/+14Star
|/
* fs: rename inode_lock to inode_hash_lockDave Chinner2011-03-253-3/+0Star
* fs: move i_sb_list out from under inode_lockDave Chinner2011-03-251-10/+10
* fs: protect inode->i_state with inode->i_lockDave Chinner2011-03-251-6/+15
* Remove one to many n's in a wordJustin P. Mattock2011-03-012-2/+2
* Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jiko...Linus Torvalds2011-01-131-1/+1
|\
| * Merge branch 'master' into for-nextJiri Kosina2010-12-223-31/+57
| |\
| * | Kconfig: typo: and -> anMichael Witten2010-11-011-1/+1
* | | fs: dcache per-inode inode alias lockingNick Piggin2011-01-071-2/+2
* | | fs: dcache remove dcache_lockNick Piggin2011-01-071-2/+0Star
* | | fs: scale inode alias listNick Piggin2011-01-071-0/+2
* | | fs: dcache scale subdirsNick Piggin2011-01-071-1/+3
| |/ |/|
* | fanotify: fill in the metadata_len field on struct fanotify_event_metadataEric Paris2010-12-151-2/+4
* | fanotify: Dont try to open a file descriptor for the overflow eventLino Sanfilippo2010-12-071-4/+13
* | fanotify: do not leak user reference on allocation failureEric Paris2010-12-071-1/+3
* | inotify: stop kernel memory leak on file creation failureEric Paris2010-12-071-0/+1
* | fanotify: on group destroy allow all waiters to bypass permission checkLino Sanfilippo2010-12-072-3/+8
* | fanotify: Dont allow a mask of 0 if setting or removing a markLino Sanfilippo2010-12-071-1/+3
* | fanotify: correct broken ref counting in case adding a mark failedLino Sanfilippo2010-12-071-17/+14Star
* | fanotify: deny permissions when no event was sentEric Paris2010-12-071-4/+12
|/
* make fanotify_read() restartable across signalsLino Sanfilippo2010-10-301-1/+1
* fs/notify/fanotify/fanotify_user.c: fix warningsAndrew Morton2010-10-281-3/+2Star
* fanotify: do not recalculate the mask if the ignored mask changedEric Paris2010-10-281-3/+3
* fanotify: ignore events on directories unless specifically requestedEric Paris2010-10-282-0/+17
* fsnotify: rename FS_IN_ISDIR to FS_ISDIREric Paris2010-10-281-1/+1
* fanotify: do not send events for irregular filesEric Paris2010-10-281-5/+6
* fanotify: limit number of listeners per userEric Paris2010-10-282-1/+21
* fanotify: allow userspace to override max marksEric Paris2010-10-281-1/+8
* fanotify: limit the number of marks in a single fanotify groupEric Paris2010-10-281-0/+9
* fanotify: allow userspace to override max queue depthEric Paris2010-10-281-1/+8
* fsnotify: implement a default maximum queue depthEric Paris2010-10-281-0/+4
* fanotify: ignore fanotify ignore marks if open writersEric Paris2010-10-281-0/+10
* fsnotify: call fsnotify_parent in perm eventsEric Paris2010-10-281-6/+9
* fsnotify: correctly handle return codes from listenersEric Paris2010-10-281-8/+12
* fanotify: implement fanotify listener orderingEric Paris2010-10-281-1/+24
* fsnotify: implement ordering between notifiersEric Paris2010-10-282-3/+12
* fanotify: allow fanotify to be builtEric Paris2010-10-281-1/+1
* split invalidate_inodes()Al Viro2010-10-261-0/+2
srmmu_set_ctable_ptr(unsigned long paddr) { paddr = ((paddr >> 4) & SRMMU_CTX_PMASK); __asm__ __volatile__("sta %0, [%1] %2\n\t" : : "r" (paddr), "r" (SRMMU_CTXTBL_PTR), "i" (ASI_M_MMUREGS) : "memory"); } extern __inline__ unsigned long srmmu_get_ctable_ptr(void) { unsigned int retval; __asm__ __volatile__("lda [%1] %2, %0\n\t" : "=r" (retval) : "r" (SRMMU_CTXTBL_PTR), "i" (ASI_M_MMUREGS)); return (retval & SRMMU_CTX_PMASK) << 4; } extern __inline__ void srmmu_set_context(int context) { __asm__ __volatile__("sta %0, [%1] %2\n\t" : : "r" (context), "r" (SRMMU_CTX_REG), "i" (ASI_M_MMUREGS) : "memory"); } extern __inline__ int srmmu_get_context(void) { register int retval; __asm__ __volatile__("lda [%1] %2, %0\n\t" : "=r" (retval) : "r" (SRMMU_CTX_REG), "i" (ASI_M_MMUREGS)); return retval; } extern __inline__ unsigned int srmmu_get_fstatus(void) { unsigned int retval; __asm__ __volatile__("lda [%1] %2, %0\n\t" : "=r" (retval) : "r" (SRMMU_FAULT_STATUS), "i" (ASI_M_MMUREGS)); return retval; } extern __inline__ unsigned int srmmu_get_faddr(void) { unsigned int retval; __asm__ __volatile__("lda [%1] %2, %0\n\t" : "=r" (retval) : "r" (SRMMU_FAULT_ADDR), "i" (ASI_M_MMUREGS)); return retval; } /* This is guaranteed on all SRMMU's. */ extern __inline__ void srmmu_flush_whole_tlb(void) { __asm__ __volatile__("sta %%g0, [%0] %1\n\t": : "r" (0x400), /* Flush entire TLB!! */ "i" (ASI_M_FLUSH_PROBE) : "memory"); } /* These flush types are not available on all chips... */ extern __inline__ void srmmu_flush_tlb_ctx(void) { __asm__ __volatile__("sta %%g0, [%0] %1\n\t": : "r" (0x300), /* Flush TLB ctx.. */ "i" (ASI_M_FLUSH_PROBE) : "memory"); } extern __inline__ void srmmu_flush_tlb_region(unsigned long addr) { addr &= SRMMU_PGDIR_MASK; __asm__ __volatile__("sta %%g0, [%0] %1\n\t": : "r" (addr | 0x200), /* Flush TLB region.. */ "i" (ASI_M_FLUSH_PROBE) : "memory"); } extern __inline__ void srmmu_flush_tlb_segment(unsigned long addr) { addr &= SRMMU_REAL_PMD_MASK; __asm__ __volatile__("sta %%g0, [%0] %1\n\t": : "r" (addr | 0x100), /* Flush TLB segment.. */ "i" (ASI_M_FLUSH_PROBE) : "memory"); } extern __inline__ void srmmu_flush_tlb_page(unsigned long page) { page &= PAGE_MASK; __asm__ __volatile__("sta %%g0, [%0] %1\n\t": : "r" (page), /* Flush TLB page.. */ "i" (ASI_M_FLUSH_PROBE) : "memory"); } extern __inline__ unsigned long srmmu_hwprobe(unsigned long vaddr) { unsigned long retval; vaddr &= PAGE_MASK; __asm__ __volatile__("lda [%1] %2, %0\n\t" : "=r" (retval) : "r" (vaddr | 0x400), "i" (ASI_M_FLUSH_PROBE)); return retval; } extern __inline__ int srmmu_get_pte (unsigned long addr) { register unsigned long entry; __asm__ __volatile__("\n\tlda [%1] %2,%0\n\t" : "=r" (entry): "r" ((addr & 0xfffff000) | 0x400), "i" (ASI_M_FLUSH_PROBE)); return entry; } extern unsigned long (*srmmu_read_physical)(unsigned long paddr); extern void (*srmmu_write_physical)(unsigned long paddr, unsigned long word); #endif /* !(__ASSEMBLY__) */ #endif /* !(_SPARC_PGTSRMMU_H) */