본문 바로가기

Art of Pr0gr4m

검색하기
Art of Pr0gr4m
프로필사진 pr0gr4m

  • Pr0gr4m (45)
    • IT (43)
      • C Language (3)
      • Linux Kernel (22)
      • Linux Programming (1)
      • Network Programming (0)
      • Android (2)
      • Embedded Linux (0)
      • Using Linux (6)
      • Kafka (2)
    • Book (2)
      • IT (2)
      • 만화 (0)
      • 기타 (0)
    • BoB (0)
Guestbook
Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
  • strex
  • page
  • slowpath
  • Linux
  • memory
  • buddy_system
  • BLOCK
  • vmalloc
  • pmap
  • kmalloc
  • kafka
  • 카프카
  • slab
  • commit
  • Network
  • proc
  • allocator
  • vm_area_struct
  • multiqueue
  • NDK
  • spinlock
  • fastpath
  • blk-mq
  • slub
  • Apache
  • devicedriver
  • lruvec
  • Android
  • Kernel
  • mm_struct
more
Archives
Today
Total
관리 메뉴
  • 글쓰기
  • 방명록
  • RSS
  • 관리

목록strex (1)

Art of Pr0gr4m

[Linux Kernel] spinlock

arm 리눅스 커널의 spin lock 구현부를 보면 다음과 같다. typedef struct { union { u32 slock; struct __raw_tickets { #ifdef __ARMEB__ u16 next; u16 owner; #else u16 owner; u16 next; #endif } tickets; }; } arch_spinlock_t; static inline void arch_spin_lock(arch_spinlock_t *lock) { unsigned long tmp; u32 newval; arch_spinlock_t lockval; prefetchw(&lock->slock); __asm__ __volatile__( "1:ldrex%0, [%3]\n" "add%1, %0, %4..

IT/Linux Kernel 2020. 7. 10. 09:33
이전 Prev 1 Next 다음

Blog is powered by kakao / Designed by Tistory

티스토리툴바