Package: linux-2.6 Version: 2.6.32-17 Severity: wishlist Tags: patch It would be nice to have the missing syscalls on Alpha wired up to bring it up to date with the other architectures. It was unfortunate that the patch sent upstream to achieve this was missed during the 2.6.32 development window and didn't get merged by Linus unto 2.6.33.
I attach the patch patch-alpha-wire-up-syscalls.txt that wires up the missing syscalls on the Alpha architecture and brings it up to date with the other architectures. This patch is a modification of the upstream commits 6e17e8b9fb74b9fb9f6ea331f7f4a049c5b4c4b8 and 21797c599c710d3851d241c4b50690f2482bf618 in that it replaces the recvmmsg syscall with a placeholder as it is not available in 2.6.32. As mentioned in bug report #588409 (which is now closed) support for performance events on Alpha was merged upstream for 2.6.33. I include here the patch patch-alpha-implement-sw-perf-events.txt which is a combination of the upstream commits a582e6f01b90211933e70edcec9bc0bbb1157402 and fcd14b3203b538dca04a2b065c774c0b57863eec and wires up the performance events syscall and provides the Alpha specific code to the perf tools. I have tested both these patches applied to the Debian 2.6.32-17 kernel source (though I did have to disable the buildcheck.py script as the ABI didn't match) and it is running successfully on an Alpha PWS600au. Michael. -- Package-specific info: ** Kernel log: boot messages should be attached ** Model information system type : Tsunami system variation : Monet system revision : 0 platform string : COMPAQ Professional Workstation XP1000 ** PCI devices: 0000:00:07.0 ISA bridge [0601]: Contaq Microsystems 82c693 [1080:c693] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 0000:00:07.1 IDE interface [0101]: Contaq Microsystems 82c693 [1080:c693] (prog-if 80 [Master]) Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin A routed to IRQ 14 Region 0: I/O ports at 01f0 [size=8] Region 1: I/O ports at 03f4 [size=1] Region 4: I/O ports at 9440 [size=16] Kernel driver in use: pata_cypress 0000:00:07.2 IDE interface [0101]: Contaq Microsystems 82c693 [1080:c693] (prog-if 00 []) Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0 Interrupt: pin B routed to IRQ 15 Region 0: I/O ports at 0170 [size=8] Region 1: I/O ports at 0374 [size=1] Region 4: Memory at 09300000 (32-bit, non-prefetchable) [disabled] [size=64K] 0000:00:07.3 USB Controller [0c03]: Contaq Microsystems 82c693 [1080:c693] (prog-if 10 [OHCI]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 248, Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 10 Region 0: Memory at 09310000 (32-bit, non-prefetchable) [size=4K] Kernel driver in use: ohci_hcd 0000:00:0b.0 PCI bridge [0604]: PLX Technology, Inc. PEX8112 x1 Lane PCI Express-to-PCI Bridge [10b5:8112] (rev aa) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 255, Cache Line Size: 64 bytes Bus: primary=00, secondary=01, subordinate=01, sec-latency=255 I/O behind bridge: 00008000-00008fff Memory behind bridge: 09000000-090fffff Prefetchable memory behind bridge: 10000000-27ffffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity+ SERR+ NoISA+ VGA+ MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> 0000:00:0c.0 USB Controller [0c03]: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038] (rev 62) (prog-if 00 [UHCI]) Subsystem: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 255, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 36 Region 4: I/O ports at 9400 [size=32] Capabilities: <access denied> Kernel driver in use: uhci_hcd 0000:00:0c.1 USB Controller [0c03]: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038] (rev 62) (prog-if 00 [UHCI]) Subsystem: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller [1106:3038] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 255, Cache Line Size: 64 bytes Interrupt: pin B routed to IRQ 37 Region 4: I/O ports at 9420 [size=32] Capabilities: <access denied> Kernel driver in use: uhci_hcd 0000:00:0c.2 USB Controller [0c03]: VIA Technologies, Inc. USB 2.0 [1106:3104] (rev 65) (prog-if 20 [EHCI]) Subsystem: VIA Technologies, Inc. USB 2.0 [1106:3104] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 255, Cache Line Size: 64 bytes Interrupt: pin C routed to IRQ 38 Region 0: Memory at 09311000 (32-bit, non-prefetchable) [size=256] Capabilities: <access denied> Kernel driver in use: ehci_hcd 0000:00:0d.0 RAID bus controller [0104]: Adaptec Serial ATA II RAID 1420SA [9005:0241] (rev 01) Subsystem: Adaptec Serial ATA II RAID 1420SA [9005:0241] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 255, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 32 Region 0: Memory at 09100000 (64-bit, non-prefetchable) [size=1M] Region 2: I/O ports at 9000 [size=256] Region 3: [virtual] Memory at 09200000 (64-bit, non-prefetchable) [size=512K] [virtual] Expansion ROM at 09280000 [disabled] [size=512K] Capabilities: <access denied> Kernel driver in use: sata_mv 0000:01:00.0 VGA compatible controller [0300]: ATI Technologies Inc RV 610LE PCI [Radeon HD 2400] [1002:94cc] (prog-if 00 [VGA controller]) Subsystem: Device [2232:1787] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 40 Region 0: Memory at 10000000 (64-bit, prefetchable) [size=256M] Region 2: Memory at 09000000 (64-bit, non-prefetchable) [size=64K] Region 4: I/O ports at 8000 [size=256] Expansion ROM at 20000000 [disabled] [size=128K] Capabilities: <access denied> 0000:01:00.1 Audio device [0403]: ATI Technologies Inc RV610 audio device [Radeon HD 2400 PRO] [1002:aa10] Subsystem: Device [2232:aa10] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx+ Latency: 0, Cache Line Size: 64 bytes Interrupt: pin B routed to IRQ 41 Region 0: Memory at 09010000 (64-bit, non-prefetchable) [size=16K] Capabilities: <access denied> Kernel driver in use: HDA Intel 0001:02:03.0 Ethernet controller [0200]: Digital Equipment Corporation DECchip 21142/43 [1011:0019] (rev 41) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 255 (5000ns min, 10000ns max), Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 45 Region 0: I/O ports at 200009400 [size=128] Region 1: Memory at 209351000 (32-bit, non-prefetchable) [size=1K] Expansion ROM at 209300000 [disabled] [size=256K] Kernel driver in use: tulip 0001:02:06.0 SCSI storage controller [0100]: QLogic Corp. ISP1020 Fast-wide SCSI [1077:1020] (rev 06) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 248, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 47 Region 0: I/O ports at 200009000 [size=256] Region 1: Memory at 209350000 (32-bit, non-prefetchable) [size=4K] Expansion ROM at 209340000 [disabled] [size=64K] Capabilities: <access denied> Kernel driver in use: qla1280 0001:02:08.0 PCI bridge [0604]: Digital Equipment Corporation DECchip 21152 [1011:0024] (rev 03) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 255, Cache Line Size: 64 bytes Bus: primary=02, secondary=03, subordinate=04, sec-latency=255 I/O behind bridge: 00008000-00008fff Memory behind bridge: 09000000-091fffff Prefetchable memory behind bridge: 0000000009200000-00000000092fffff Secondary status: 66MHz- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- <SERR- <PERR- BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> 0001:03:09.0 PCI bridge [0604]: Texas Instruments PCI2250 PCI-to-PCI Bridge [104c:ac23] (rev 02) (prog-if 00 [Normal decode]) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 255, Cache Line Size: 64 bytes Bus: primary=03, secondary=04, subordinate=04, sec-latency=255 Memory behind bridge: 09000000-090fffff Secondary status: 66MHz- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ <SERR- <PERR- BridgeCtl: Parity+ SERR+ NoISA- VGA- MAbort- >Reset- FastB2B- PriDiscTmr- SecDiscTmr- DiscTmrStat- DiscTmrSERREn- Capabilities: <access denied> 0001:03:0a.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet [10ec:8169] (rev 10) Subsystem: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet [10ec:8169] Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (8000ns min, 16000ns max), Cache Line Size: 32 bytes Interrupt: pin A routed to IRQ 24 Region 0: I/O ports at 200008000 [size=256] Region 1: Memory at 209100000 (32-bit, non-prefetchable) [size=256] Expansion ROM at 209200000 [disabled] [size=128K] Capabilities: <access denied> Kernel driver in use: r8169 0001:04:00.0 FireWire (IEEE 1394) [0c00]: NEC Corporation uPD72874 IEEE1394 OHCI 1.1 3-port PHY-Link Ctrlr [1033:00f2] (rev 01) (prog-if 10 [OHCI]) Subsystem: ONNTO Corp. Device [167e:0508] Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 248 (5000ns min, 11000ns max), Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 28 Region 0: Memory at 209000000 (32-bit, non-prefetchable) [size=4K] Capabilities: <access denied> Kernel driver in use: firewire_ohci 0001:04:01.0 USB Controller [0c03]: NEC Corporation USB [1033:0035] (rev 41) (prog-if 10 [OHCI]) Subsystem: Belkin Root Hub [1799:0001] Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 252 (250ns min, 10500ns max), Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 29 Region 0: Memory at 209001000 (32-bit, non-prefetchable) [size=4K] Capabilities: <access denied> Kernel driver in use: ohci_hcd 0001:04:01.1 USB Controller [0c03]: NEC Corporation USB [1033:0035] (rev 41) (prog-if 10 [OHCI]) Subsystem: Belkin Root Hub [1799:0001] Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 252 (250ns min, 10500ns max), Cache Line Size: 64 bytes Interrupt: pin B routed to IRQ 30 Region 0: Memory at 209002000 (32-bit, non-prefetchable) [size=4K] Capabilities: <access denied> Kernel driver in use: ohci_hcd 0001:04:01.2 USB Controller [0c03]: NEC Corporation USB 2.0 [1033:00e0] (rev 02) (prog-if 20 [EHCI]) Subsystem: Belkin Root Hub [1799:0002] Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 252 (4000ns min, 8500ns max), Cache Line Size: 64 bytes Interrupt: pin C routed to IRQ 31 Region 0: Memory at 209003000 (32-bit, non-prefetchable) [size=256] Capabilities: <access denied> Kernel driver in use: ehci_hcd ** USB devices: Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 002: ID 2040:9950 Hauppauge Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 002: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub -- System Information: Debian Release: squeeze/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: alpha Kernel: Linux 2.6.34.1-dp264-p Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages linux-image-2.6.32-5-alpha-generic depends on: ii debconf [debconf-2.0] 1.5.33 Debian configuration management sy ii initramfs-tools [linux-initra 0.97.2 tools for generating an initramfs ii linux-base 2.6.32-17 Linux image base package ii module-init-tools 3.12-1 tools for managing Linux kernel mo Versions of packages linux-image-2.6.32-5-alpha-generic recommends: ii firmware-linux-free 2.6.32-17 Binary firmware for various driver Versions of packages linux-image-2.6.32-5-alpha-generic suggests: ii aboot 1.0~pre20040408-3 Linux bootloader for the SRM conso pn fdutils <none> (no description available) pn linux-doc-2.6.32 <none> (no description available) Versions of packages linux-image-2.6.32-5-alpha-generic is related to: pn firmware-bnx2 <none> (no description available) pn firmware-bnx2x <none> (no description available) pn firmware-ipw2x00 <none> (no description available) ii firmware-ivtv 0.26 Binary firmware for iTVC15-family pn firmware-iwlwifi <none> (no description available) pn firmware-linux <none> (no description available) ii firmware-linux-nonfree 0.26 Binary firmware for various driver ii firmware-qlogic 0.26 Binary firmware for QLogic IBA7220 pn firmware-ralink <none> (no description available) pn xen-hypervisor <none> (no description available) -- debconf information excluded
diff --git a/arch/alpha/include/asm/unistd.h b/arch/alpha/include/asm/unistd.h index 5b5c174..9a06402 100644 --- a/arch/alpha/include/asm/unistd.h +++ b/arch/alpha/include/asm/unistd.h @@ -247,6 +247,7 @@ #define __IGNORE_pause #define __IGNORE_time #define __IGNORE_utime +#define __IGNORE_umount2 /* * Linux-specific system calls begin at 300 @@ -433,10 +434,25 @@ #define __NR_signalfd 476 #define __NR_timerfd 477 #define __NR_eventfd 478 +/* recvmmsg not available in 2.6.32 */ +/* #define __NR_recvmmsg 479 */ +#define __NR_fallocate 480 +#define __NR_timerfd_create 481 +#define __NR_timerfd_settime 482 +#define __NR_timerfd_gettime 483 +#define __NR_signalfd4 484 +#define __NR_eventfd2 485 +#define __NR_epoll_create1 486 +#define __NR_dup3 487 +#define __NR_pipe2 488 +#define __NR_inotify_init1 489 +#define __NR_preadv 490 +#define __NR_pwritev 491 +#define __NR_rt_tgsigqueueinfo 492 #ifdef __KERNEL__ -#define NR_SYSCALLS 479 +#define NR_SYSCALLS 493 #define __ARCH_WANT_IPC_PARSE_VERSION #define __ARCH_WANT_OLD_READDIR diff --git a/arch/alpha/kernel/systbls.S b/arch/alpha/kernel/systbls.S index 95c9aef..74c6ed5 100644 --- a/arch/alpha/kernel/systbls.S +++ b/arch/alpha/kernel/systbls.S @@ -495,8 +495,22 @@ sys_call_table: .quad sys_epoll_pwait .quad sys_utimensat /* 475 */ .quad sys_signalfd - .quad sys_ni_syscall + .quad sys_ni_syscall /* sys_timerfd */ .quad sys_eventfd + .quad sys_ni_syscall /* sys_recvmmsg in 2.6.33 */ + .quad sys_fallocate /* 480 */ + .quad sys_timerfd_create + .quad sys_timerfd_settime + .quad sys_timerfd_gettime + .quad sys_signalfd4 + .quad sys_eventfd2 /* 485 */ + .quad sys_epoll_create1 + .quad sys_dup3 + .quad sys_pipe2 + .quad sys_inotify_init1 + .quad sys_preadv /* 490 */ + .quad sys_pwritev + .quad sys_rt_tgsigqueueinfo .size sys_call_table, . - sys_call_table .type sys_call_table, @object
diff --git a/arch/alpha/Kconfig b/arch/alpha/Kconfig index 4434481..bd7261e 100644 --- a/arch/alpha/Kconfig +++ b/arch/alpha/Kconfig @@ -9,6 +9,7 @@ config ALPHA select HAVE_IDE select HAVE_OPROFILE select HAVE_SYSCALL_WRAPPERS + select HAVE_PERF_EVENTS help The Alpha is a 64-bit general-purpose processor designed and marketed by the Digital Equipment Corporation of blessed memory, diff --git a/arch/alpha/include/asm/perf_event.h b/arch/alpha/include/asm/perf_event.h new file mode 100644 index 0000000..3bef852 --- /dev/null +++ b/arch/alpha/include/asm/perf_event.h @@ -0,0 +1,9 @@ +#ifndef __ASM_ALPHA_PERF_EVENT_H +#define __ASM_ALPHA_PERF_EVENT_H + +/* Alpha only supports software events through this interface. */ +static inline void set_perf_event_pending(void) { } + +#define PERF_EVENT_INDEX_OFFSET 0 + +#endif /* __ASM_ALPHA_PERF_EVENT_H */ diff --git a/arch/alpha/include/asm/unistd.h b/arch/alpha/include/asm/unistd.h index 9a06402..471e52d 100644 --- a/arch/alpha/include/asm/unistd.h +++ b/arch/alpha/include/asm/unistd.h @@ -449,10 +449,11 @@ #define __NR_preadv 490 #define __NR_pwritev 491 #define __NR_rt_tgsigqueueinfo 492 +#define __NR_perf_event_open 493 #ifdef __KERNEL__ -#define NR_SYSCALLS 493 +#define NR_SYSCALLS 494 #define __ARCH_WANT_IPC_PARSE_VERSION #define __ARCH_WANT_OLD_READDIR diff --git a/arch/alpha/kernel/systbls.S b/arch/alpha/kernel/systbls.S index 74c6ed5..ff1dcdb 100644 --- a/arch/alpha/kernel/systbls.S +++ b/arch/alpha/kernel/systbls.S @@ -511,6 +511,7 @@ sys_call_table: .quad sys_preadv /* 490 */ .quad sys_pwritev .quad sys_rt_tgsigqueueinfo + .quad sys_perf_event_open .size sys_call_table, . - sys_call_table .type sys_call_table, @object diff --git a/tools/perf/perf.h b/tools/perf/perf.h index 8cc4623..216bdb2 100644 --- a/tools/perf/perf.h +++ b/tools/perf/perf.h @@ -47,6 +47,12 @@ #define cpu_relax() asm volatile("":::"memory") #endif +#ifdef __alpha__ +#include "../../arch/alpha/include/asm/unistd.h" +#define rmb() asm volatile("mb" ::: "memory") +#define cpu_relax() asm volatile("" ::: "memory") +#endif + #include <time.h> #include <unistd.h> #include <sys/types.h>