Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
todo:audit-the-shifts [2009/08/10 13:24] mdc |
todo:audit-the-shifts [2009/08/10 13:52] (current) mdc |
||
---|---|---|---|
Line 72: | Line 72: | ||
Here is a list of all the variable shifts in gPXE, extracted with | Here is a list of all the variable shifts in gPXE, extracted with | ||
+ | $ make veryclean | ||
$ make EXTRA_CFLAGS=-fno-inline bin/gpxe.lkrn | $ make EXTRA_CFLAGS=-fno-inline bin/gpxe.lkrn | ||
$ objdump -d bin/gpxe.lkrn.tmp | grep "s[ah][lr].*%cl," | cut -d: -f1 | xargs addr2line -fe bin/gpxe.lkrn.tmp | \ | $ objdump -d bin/gpxe.lkrn.tmp | grep "s[ah][lr].*%cl," | cut -d: -f1 | xargs addr2line -fe bin/gpxe.lkrn.tmp | \ | ||
- | perl -p0777e 's|\n/| @ /|g; s|'$PWD'/||g;' | uniq | + | perl -p0777e 's|\n/| @ /|g; s|'$PWD'/||g;' | uniq | sort --field-separator=@ --key=2b |
<code> | <code> | ||
+ | outb @ arch/i386/include/gpxe/x86_io.h:129 | ||
+ | base64_encode @ core/base64.c:59 | ||
+ | bitmap_test @ core/bitmap.c:79 | ||
+ | bitmap_set @ core/bitmap.c:95 | ||
+ | isspace @ core/ctype.c:37 | ||
+ | fetch_uint_setting @ core/settings.c:707 | ||
+ | i2c_select @ drivers/bitbash/i2c_bit.c:208 | ||
+ | i2c_select @ drivers/bitbash/i2c_bit.c:216 | ||
+ | spi_bit_transfer @ drivers/bitbash/spi_bit.c:107 | ||
+ | arbel_start_firmware @ drivers/infiniband/arbel.c:1713 | ||
+ | arbel_get_limits @ drivers/infiniband/arbel.c:1794 | ||
+ | arbel_get_limits @ drivers/infiniband/arbel.c:1798 | ||
+ | arbel_get_limits @ drivers/infiniband/arbel.c:1801 | ||
+ | arbel_get_limits @ drivers/infiniband/arbel.c:1805 | ||
+ | arbel_get_limits @ drivers/infiniband/arbel.c:1809 | ||
+ | arbel_get_limits @ drivers/infiniband/arbel.c:1812 | ||
+ | arbel_get_limits @ drivers/infiniband/arbel.c:1815 | ||
+ | icm_usage @ drivers/infiniband/arbel.c:1834 | ||
+ | arbel_alloc_icm @ drivers/infiniband/arbel.c:1946 | ||
+ | hermon_bitmask_free @ drivers/infiniband/hermon.c:109 | ||
+ | hermon_get_cap @ drivers/infiniband/hermon.c:2156 | ||
+ | hermon_get_cap @ drivers/infiniband/hermon.c:2161 | ||
+ | hermon_get_cap @ drivers/infiniband/hermon.c:2164 | ||
+ | hermon_get_cap @ drivers/infiniband/hermon.c:2169 | ||
+ | hermon_get_cap @ drivers/infiniband/hermon.c:2172 | ||
+ | icm_usage @ drivers/infiniband/hermon.c:2200 | ||
+ | hermon_free_icm @ drivers/infiniband/hermon.c:2465 | ||
+ | hermon_create_qp @ drivers/infiniband/hermon.c:976 | ||
+ | linda_send_buf_in_use @ drivers/infiniband/linda.c:411 | ||
+ | linda_create_recv_wq @ drivers/infiniband/linda.c:624 | ||
+ | linda_create_recv_wq @ drivers/infiniband/linda.c:625 | ||
+ | linda_destroy_recv_wq @ drivers/infiniband/linda.c:654 | ||
+ | linda_destroy_recv_wq @ drivers/infiniband/linda.c:655 | ||
corkscrew_probe1 @ drivers/net/3c515.c:727 | corkscrew_probe1 @ drivers/net/3c515.c:727 | ||
+ | ath5k_copy_channels @ drivers/net/ath5k/ath5k.c:571 | ||
+ | ath5k_hw_start_tx_dma @ drivers/net/ath5k/ath5k_dma.c:146 | ||
+ | ath5k_hw_stop_tx_dma @ drivers/net/ath5k/ath5k_dma.c:189 | ||
+ | ath5k_hw_set_txdp @ drivers/net/ath5k/ath5k_dma.c:309 | ||
+ | ath5k_eeprom_read_pcal_info_2413 @ drivers/net/ath5k/ath5k_eeprom.c:1215 | ||
+ | ath5k_eeprom_convert_pcal_info_5111 @ drivers/net/ath5k/ath5k_eeprom.c:680 | ||
+ | ath5k_eeprom_read_pcal_info_5112 @ drivers/net/ath5k/ath5k_eeprom.c:958 | ||
+ | ath5k_hw_bitswap @ drivers/net/ath5k/ath5k.h:1269 | ||
+ | ath5k_hw_rfb_op @ drivers/net/ath5k/ath5k_phy.c:108 | ||
+ | ath5k_hw_rfb_op @ drivers/net/ath5k/ath5k_phy.c:113 | ||
+ | ath5k_hw_rfb_op @ drivers/net/ath5k/ath5k_phy.c:114 | ||
+ | ath5k_hw_rfb_op @ drivers/net/ath5k/ath5k_phy.c:116 | ||
+ | ath5k_hw_reset_tx_queue @ drivers/net/ath5k/ath5k_qcu.c:187 | ||
+ | ath5k_hw_reset_tx_queue @ drivers/net/ath5k/ath5k_qcu.c:189 | ||
+ | ath5k_hw_write_ofdm_timings @ drivers/net/ath5k/ath5k_reset.c:129 | ||
read_eeprom @ drivers/net/davicom.c:398 | read_eeprom @ drivers/net/davicom.c:398 | ||
read_eeprom @ drivers/net/davicom.c:407 | read_eeprom @ drivers/net/davicom.c:407 | ||
read_srom_word @ drivers/net/dmfe.c:677 | read_srom_word @ drivers/net/dmfe.c:677 | ||
- | read_eeprom @ drivers/net/eepro.c:507 | + | e1000_get_hw_control @ drivers/net/e1000/e1000.c:68 |
- | eepro100_poll @ drivers/net/eepro100.c:548 | + | e1000_shift_out_mdi_bits @ drivers/net/e1000/e1000_hw.c:3323 |
+ | e1000_phy_reset @ drivers/net/e1000/e1000_hw.c:3918 | ||
+ | e1000_init_eeprom_params @ drivers/net/e1000/e1000_hw.c:4637 | ||
+ | e1000_shift_out_ee_bits @ drivers/net/e1000/e1000_hw.c:4700 | ||
+ | e1000_read_mac_addr @ drivers/net/e1000/e1000_hw.c:5729 | ||
+ | e1000_mta_set @ drivers/net/e1000/e1000_hw.c:5883 | ||
+ | e1000_rar_set @ drivers/net/e1000/e1000_hw.c:5941 | ||
+ | e1000_clear_vfta @ drivers/net/e1000/e1000_hw.c:6013 | ||
+ | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6066 | ||
+ | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6072 | ||
+ | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6078 | ||
+ | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6084 | ||
+ | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6089 | ||
+ | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6095 | ||
+ | e1000_blink_led_start @ drivers/net/e1000/e1000_hw.c:6189 | ||
+ | e1000_blink_led_start @ drivers/net/e1000/e1000_hw.c:6191 | ||
+ | e1000_reset_hw @ drivers/net/e1000/e1000_hw.c:625 | ||
do_eeprom_cmd @ drivers/net/eepro100.c:353 | do_eeprom_cmd @ drivers/net/eepro100.c:353 | ||
+ | eepro100_poll @ drivers/net/eepro100.c:548 | ||
eepro100_probe @ drivers/net/eepro100.c:646 | eepro100_probe @ drivers/net/eepro100.c:646 | ||
+ | read_eeprom @ drivers/net/eepro.c:507 | ||
mdio_clause45_wait_reset_mmds @ drivers/net/etherfabric.c:286 | mdio_clause45_wait_reset_mmds @ drivers/net/etherfabric.c:286 | ||
+ | phantom_poll_link_state @ drivers/net/phantom/phantom.c:1048 | ||
+ | phantom_check_boot_enable @ drivers/net/phantom/phantom.c:1944 | ||
rtl8169_write_gmii_reg_bit @ drivers/net/r8169.c:348 | rtl8169_write_gmii_reg_bit @ drivers/net/r8169.c:348 | ||
rtl_poll @ drivers/net/rtl8139.c:426 | rtl_poll @ drivers/net/rtl8139.c:426 | ||
+ | rtl8225_read @ drivers/net/rtl818x/rtl8185_rtl8225.c:118 | ||
+ | rtl8225_read @ drivers/net/rtl818x/rtl8185_rtl8225.c:178 | ||
+ | rtl8225_write @ drivers/net/rtl818x/rtl8185_rtl8225.c:74 | ||
sis900_read_eeprom @ drivers/net/sis900.c:478 | sis900_read_eeprom @ drivers/net/sis900.c:478 | ||
sis900_mdio_read @ drivers/net/sis900.c:546 | sis900_mdio_read @ drivers/net/sis900.c:546 | ||
Line 99: | Line 171: | ||
read_eeprom @ drivers/net/tulip.c:723 | read_eeprom @ drivers/net/tulip.c:723 | ||
WriteMII @ drivers/net/via-rhine.c:854 | WriteMII @ drivers/net/via-rhine.c:854 | ||
+ | w89c840_probe @ drivers/net/w89c840.c:676 | ||
eeprom_read @ drivers/net/w89c840.c:753 | eeprom_read @ drivers/net/w89c840.c:753 | ||
mdio_read @ drivers/net/w89c840.c:817 | mdio_read @ drivers/net/w89c840.c:817 | ||
- | w89c840_probe @ drivers/net/w89c840.c:676 | ||
- | e1000_get_hw_control @ drivers/net/e1000/e1000.c:68 | ||
- | e1000_mta_set @ drivers/net/e1000/e1000_hw.c:5883 | ||
- | e1000_rar_set @ drivers/net/e1000/e1000_hw.c:5941 | ||
- | e1000_clear_vfta @ drivers/net/e1000/e1000_hw.c:6013 | ||
- | e1000_blink_led_start @ drivers/net/e1000/e1000_hw.c:6189 | ||
- | e1000_blink_led_start @ drivers/net/e1000/e1000_hw.c:6191 | ||
- | e1000_shift_out_mdi_bits @ drivers/net/e1000/e1000_hw.c:3323 | ||
- | e1000_shift_out_ee_bits @ drivers/net/e1000/e1000_hw.c:4700 | ||
- | e1000_reset_hw @ drivers/net/e1000/e1000_hw.c:625 | ||
- | e1000_phy_reset @ drivers/net/e1000/e1000_hw.c:3918 | ||
- | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6066 | ||
- | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6071 | ||
- | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6077 | ||
- | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6078 | ||
- | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6084 | ||
- | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6088 | ||
- | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6094 | ||
- | e1000_id_led_init @ drivers/net/e1000/e1000_hw.c:6095 | ||
- | e1000_read_mac_addr @ drivers/net/e1000/e1000_hw.c:5729 | ||
- | e1000_init_eeprom_params @ drivers/net/e1000/e1000_hw.c:4637 | ||
- | phantom_check_boot_enable @ drivers/net/phantom/phantom.c:1944 | ||
- | phantom_poll_link_state @ drivers/net/phantom/phantom.c:1048 | ||
- | rtl8225_write @ drivers/net/rtl818x/rtl8185_rtl8225.c:74 | ||
- | rtl8225_read @ drivers/net/rtl818x/rtl8185_rtl8225.c:118 | ||
- | rtl8225_read @ drivers/net/rtl818x/rtl8185_rtl8225.c:178 | ||
- | ath5k_copy_channels @ drivers/net/ath5k/ath5k.c:571 | ||
- | ath5k_hw_start_tx_dma @ drivers/net/ath5k/ath5k_dma.c:146 | ||
- | ath5k_hw_set_txdp @ drivers/net/ath5k/ath5k_dma.c:309 | ||
- | ath5k_hw_stop_tx_dma @ drivers/net/ath5k/ath5k_dma.c:189 | ||
- | ath5k_eeprom_read_pcal_info_2413 @ drivers/net/ath5k/ath5k_eeprom.c:1215 | ||
- | ath5k_eeprom_read_pcal_info_5112 @ drivers/net/ath5k/ath5k_eeprom.c:958 | ||
- | ath5k_eeprom_convert_pcal_info_5111 @ drivers/net/ath5k/ath5k_eeprom.c:680 | ||
- | ath5k_hw_bitswap @ drivers/net/ath5k/ath5k.h:1269 | ||
- | ath5k_hw_rfb_op @ drivers/net/ath5k/ath5k_phy.c:108 | ||
- | ath5k_hw_rfb_op @ drivers/net/ath5k/ath5k_phy.c:113 | ||
- | ath5k_hw_rfb_op @ drivers/net/ath5k/ath5k_phy.c:114 | ||
- | ath5k_hw_rfb_op @ drivers/net/ath5k/ath5k_phy.c:116 | ||
- | ath5k_hw_reset_tx_queue @ drivers/net/ath5k/ath5k_qcu.c:187 | ||
- | ath5k_hw_reset_tx_queue @ drivers/net/ath5k/ath5k_qcu.c:189 | ||
- | ath5k_hw_write_ofdm_timings @ drivers/net/ath5k/ath5k_reset.c:129 | ||
- | nvs_read @ drivers/nvs/nvs.c:55 | ||
- | nvs_read @ drivers/nvs/nvs.c:69 | ||
nvs_write @ drivers/nvs/nvs.c:126 | nvs_write @ drivers/nvs/nvs.c:126 | ||
nvs_write @ drivers/nvs/nvs.c:144 | nvs_write @ drivers/nvs/nvs.c:144 | ||
+ | nvs_read @ drivers/nvs/nvs.c:55 | ||
+ | nvs_read @ drivers/nvs/nvs.c:69 | ||
threewire_detect_address_len @ drivers/nvs/threewire.c:121 | threewire_detect_address_len @ drivers/nvs/threewire.c:121 | ||
- | i2c_select @ drivers/bitbash/i2c_bit.c:208 | ||
- | i2c_select @ drivers/bitbash/i2c_bit.c:216 | ||
- | spi_bit_transfer @ drivers/bitbash/spi_bit.c:107 | ||
- | icm_usage @ drivers/infiniband/arbel.c:1834 | ||
- | arbel_get_limits @ drivers/infiniband/arbel.c:1794 | ||
- | arbel_get_limits @ drivers/infiniband/arbel.c:1798 | ||
- | arbel_get_limits @ drivers/infiniband/arbel.c:1801 | ||
- | arbel_get_limits @ drivers/infiniband/arbel.c:1805 | ||
- | arbel_get_limits @ drivers/infiniband/arbel.c:1809 | ||
- | arbel_get_limits @ drivers/infiniband/arbel.c:1812 | ||
- | arbel_get_limits @ drivers/infiniband/arbel.c:1815 | ||
- | arbel_alloc_icm @ drivers/infiniband/arbel.c:1946 | ||
- | arbel_start_firmware @ drivers/infiniband/arbel.c:1713 | ||
- | icm_usage @ drivers/infiniband/hermon.c:2200 | ||
- | hermon_free_icm @ drivers/infiniband/hermon.c:2465 | ||
- | hermon_create_qp @ drivers/infiniband/hermon.c:976 | ||
- | hermon_get_cap @ drivers/infiniband/hermon.c:2156 | ||
- | hermon_get_cap @ drivers/infiniband/hermon.c:2161 | ||
- | hermon_get_cap @ drivers/infiniband/hermon.c:2164 | ||
- | hermon_get_cap @ drivers/infiniband/hermon.c:2169 | ||
- | hermon_get_cap @ drivers/infiniband/hermon.c:2172 | ||
- | linda_send_buf_in_use @ drivers/infiniband/linda.c:411 | ||
- | linda_create_recv_wq @ drivers/infiniband/linda.c:624 | ||
- | linda_create_recv_wq @ drivers/infiniband/linda.c:625 | ||
- | linda_destroy_recv_wq @ drivers/infiniband/linda.c:654 | ||
- | linda_destroy_recv_wq @ drivers/infiniband/linda.c:655 | ||
- | outb @ arch/i386/include/gpxe/x86_io.h:129 | ||
FD_SET @ include/gpxe/posix_io.h:49 | FD_SET @ include/gpxe/posix_io.h:49 | ||
- | base64_encode @ core/base64.c:59 | ||
- | bitmap_test @ core/bitmap.c:79 | ||
- | bitmap_set @ core/bitmap.c:95 | ||
- | isspace @ core/ctype.c:37 | ||
FD_ISSET @ include/gpxe/posix_io.h:72 | FD_ISSET @ include/gpxe/posix_io.h:72 | ||
- | fetch_uint_setting @ core/settings.c:707 | ||
- | net80211_set_rtscts_rate @ net/80211/net80211.c:1904 | ||
net80211_process_ie @ net/80211/net80211.c:1075 | net80211_process_ie @ net/80211/net80211.c:1075 | ||
net80211_marshal_request_info @ net/80211/net80211.c:1207 | net80211_marshal_request_info @ net/80211/net80211.c:1207 | ||
+ | net80211_set_rtscts_rate @ net/80211/net80211.c:1904 | ||
rc80211_calc_net_goodness @ net/80211/rc80211.c:177 | rc80211_calc_net_goodness @ net/80211/rc80211.c:177 | ||
</code> | </code> | ||