* Re: [PATCH] SCSI Core patches
From: James Bottomley @ 2003-01-10 20:05 UTC (permalink / raw)
To: Luben Tuikov; +Cc: linux-scsi
In-Reply-To: <3E1F1DAC.6060207@splentec.com>
luben@splentec.com said:
> I think that the slab cache can acknowledge a GFP_DMA flag even after
> creation of the slab, but not 100% sure on this. I.e. in
> scsi_get_command() a check of host->unchecked_isa_dma can be performed
> and the kmem_flags OR-ed with GFP_DMA.
Unfortunately, not. That's why the kmem caches that are used by kmalloc have
two separate caches for each buddy size (one for zone normal and one for zone
dma)---you see this in cat /proc/slabinfo.
The essential problem is that the zone flags must be known at the time slab
gets fed from __get_free_pages().
> I've no problem changing the slab alloc. just let's decide if we want
> a slab per host (kind of inefficient) or 2 slabs (DMA, and non-DMA) or
> OR-ing the mask upon scsi_get_command().
The latter, I think. We want the *ability* to have one slab per host, but
we'd then assign each host either to the zone DMA or zone normal allocator.
Then, when the wierd device that has a strange dma_mask comes along, it may
use its own slab if necessary.
> Actually, I had this in the 2.5.52 version of this patch but decided
> that the LLDD code will run as normal kernel code and that the actual
> PCI HOST will never have to access the struct scsi_cmnd directly over
> the PCI bus; but will only need to access the sg list. For this reason
> I decided to leave it out. I.e. struct scsi_cmnd will alway be
> accessed in normal operation of the kernel, and thus no need for
> GFP_DMA. (I'd so much rather it be that way, so much... :-)
I'd be happy about this too. Just assure me that no legacy ISA drivers do dma
from the Scsi_Cmnd structure and we can forget about the separate allocators
and revoke the current promise that Scsi_Cmnd will be in memory dma'able by
the driver.
James
^ permalink raw reply
* Re: [ACPI] ACPI patches updated (20030109)
From: Jurgen Kramer @ 2003-01-10 20:16 UTC (permalink / raw)
To: Grover, Andrew; +Cc: acpi-devel, kernel list
In-Reply-To: <F760B14C9561B941B89469F59BA3A84725A119@orsmsx401.jf.intel.com>
Hi,
Are you planning a diff for 2.4.20? I'd really like to
test the lid status update on my laptop.
Cheers,
Jurgen
^ permalink raw reply
* Kernel 2.5.55 failed to boot with ACPI support
From: Ole J. Hagen @ 2003-01-10 21:10 UTC (permalink / raw)
To: Linux Kernel Mailing List
In-Reply-To: <Pine.LNX.4.44.0301101940460.18287-100000@phoenix.infradead.org>
Hi.
I just wanted to inform that kernel-2.5.55 failes to boot when ACPI support is
compiled in the kernel.
I have following configuration; Dell Optiplex GX-240, Pentium 4 (1.5 GHz), ATI
RAGE 128.
Cheers,
Ole J.
Sorry for any inconvenience this mail might have.
My working kernel configuration is:
#
# Automatically generated make config: don't edit
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_SWAP=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
#
# General setup
#
CONFIG_SYSVIPC=y
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_SYSCTL=y
# CONFIG_LOG_BUF_SHIFT_17 is not set
# CONFIG_LOG_BUF_SHIFT_16 is not set
# CONFIG_LOG_BUF_SHIFT_15 is not set
CONFIG_LOG_BUF_SHIFT_14=y
# CONFIG_LOG_BUF_SHIFT_13 is not set
# CONFIG_LOG_BUF_SHIFT_12 is not set
CONFIG_LOG_BUF_SHIFT=14
#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
CONFIG_OBSOLETE_MODPARM=y
CONFIG_KMOD=y
#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMIII is not set
CONFIG_MPENTIUM4=y
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MELAN is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MCYRIXIII is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=7
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_PREFETCH=y
CONFIG_X86_SSE2=y
# CONFIG_HUGETLB_PAGE is not set
# CONFIG_SMP is not set
CONFIG_PREEMPT=y
# CONFIG_X86_UP_APIC is not set
# CONFIG_X86_MCE is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_MICROCODE is not set
# CONFIG_X86_MSR is not set
# CONFIG_X86_CPUID is not set
CONFIG_EDD=y
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
CONFIG_HAVE_DEC_LOCK=y
#
# Power management options (ACPI, APM)
#
# CONFIG_PM is not set
#
# ACPI Support
#
# CONFIG_ACPI is not set
# CONFIG_CPU_FREQ is not set
#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
# CONFIG_SCx200 is not set
# CONFIG_PCI_LEGACY_PROC is not set
CONFIG_PCI_NAMES=y
# CONFIG_ISA is not set
# CONFIG_MCA is not set
# CONFIG_HOTPLUG is not set
#
# Executable file formats
#
CONFIG_KCORE_ELF=y
# CONFIG_KCORE_AOUT is not set
# CONFIG_BINFMT_AOUT is not set
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=y
#
# Memory Technology Devices (MTD)
#
# CONFIG_MTD is not set
#
# Parallel port support
#
CONFIG_PARPORT=y
CONFIG_PARPORT_PC=y
CONFIG_PARPORT_PC_CML1=y
CONFIG_PARPORT_SERIAL=m
# CONFIG_PARPORT_PC_FIFO is not set
# CONFIG_PARPORT_PC_SUPERIO is not set
# CONFIG_PARPORT_OTHER is not set
# CONFIG_PARPORT_1284 is not set
#
# Plug and Play support
#
# CONFIG_PNP is not set
#
# Block devices
#
# CONFIG_BLK_DEV_FD is not set
# CONFIG_PARIDE is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not set
# CONFIG_BLK_DEV_UMEM is not set
CONFIG_BLK_DEV_LOOP=m
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_LBD is not set
#
# ATA/ATAPI/MFM/RLL device support
#
CONFIG_IDE=y
#
# IDE, ATA and ATAPI Block devices
#
CONFIG_BLK_DEV_IDE=y
#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
# CONFIG_IDEDISK_STROKE is not set
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDEFLOPPY is not set
CONFIG_BLK_DEV_IDESCSI=y
# CONFIG_IDE_TASK_IOCTL is not set
#
# IDE chipset support/bugfixes
#
# CONFIG_BLK_DEV_CMD640 is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDE_TCQ is not set
CONFIG_BLK_DEV_OFFBOARD=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_PCI_WIP=y
# CONFIG_IDEDMA_NEW_DRIVE_LISTINGS is not set
CONFIG_BLK_DEV_ADMA=y
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
# CONFIG_BLK_DEV_AMD74XX is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=y
# CONFIG_BLK_DEV_NFORCE is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_OPTI621 is not set
CONFIG_BLK_DEV_PDC202XX_OLD=y
# CONFIG_BLK_DEV_PDC202XX_NEW is not set
# CONFIG_BLK_DEV_RZ1000 is not set
# CONFIG_BLK_DEV_SVWKS is not set
# CONFIG_BLK_DEV_SIIMAGE is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_IDEDMA_AUTO=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_BLK_DEV_PDC202XX=y
CONFIG_BLK_DEV_IDE_MODES=y
#
# SCSI device support
#
CONFIG_SCSI=y
#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
CONFIG_BLK_DEV_SR=m
CONFIG_BLK_DEV_SR_VENDOR=y
CONFIG_CHR_DEV_SG=m
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
# CONFIG_SCSI_MULTI_LUN is not set
# CONFIG_SCSI_REPORT_LUNS is not set
# CONFIG_SCSI_CONSTANTS is not set
# CONFIG_SCSI_LOGGING is not set
#
# SCSI low-level drivers
#
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_ACARD is not set
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not set
# CONFIG_SCSI_AIC79XX is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_IN2000 is not set
# CONFIG_SCSI_AM53C974 is not set
# CONFIG_SCSI_MEGARAID is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_CPQFCTS is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_EATA_DMA is not set
# CONFIG_SCSI_EATA_PIO is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GDTH is not set
# CONFIG_SCSI_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INITIO is not set
# CONFIG_SCSI_INIA100 is not set
# CONFIG_SCSI_PPA is not set
# CONFIG_SCSI_IMM is not set
# CONFIG_SCSI_NCR53C7xx is not set
# CONFIG_SCSI_SYM53C8XX_2 is not set
# CONFIG_SCSI_NCR53C8XX is not set
# CONFIG_SCSI_SYM53C8XX is not set
# CONFIG_SCSI_PCI2000 is not set
# CONFIG_SCSI_PCI2220I is not set
# CONFIG_SCSI_QLOGIC_ISP is not set
# CONFIG_SCSI_QLOGIC_FC is not set
# CONFIG_SCSI_QLOGIC_1280 is not set
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_U14_34F is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set
#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set
#
# Fusion MPT device support
#
# CONFIG_FUSION is not set
#
# IEEE 1394 (FireWire) support (EXPERIMENTAL)
#
# CONFIG_IEEE1394 is not set
#
# I2O device support
#
# CONFIG_I2O is not set
#
# Networking support
#
CONFIG_NET=y
#
# Networking options
#
CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not set
# CONFIG_NETLINK_DEV is not set
CONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not set
CONFIG_FILTER=y
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
# CONFIG_IP_ADVANCED_ROUTER is not set
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_IP_MROUTE is not set
# CONFIG_ARPD is not set
# CONFIG_INET_ECN is not set
CONFIG_SYN_COOKIES=y
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_XFRM_USER is not set
#
# IP: Netfilter Configuration
#
CONFIG_IP_NF_CONNTRACK=y
CONFIG_IP_NF_FTP=y
# CONFIG_IP_NF_IRC is not set
# CONFIG_IP_NF_QUEUE is not set
CONFIG_IP_NF_IPTABLES=y
# CONFIG_IP_NF_MATCH_LIMIT is not set
# CONFIG_IP_NF_MATCH_MAC is not set
# CONFIG_IP_NF_MATCH_PKTTYPE is not set
# CONFIG_IP_NF_MATCH_MARK is not set
# CONFIG_IP_NF_MATCH_MULTIPORT is not set
# CONFIG_IP_NF_MATCH_TOS is not set
# CONFIG_IP_NF_MATCH_ECN is not set
# CONFIG_IP_NF_MATCH_DSCP is not set
# CONFIG_IP_NF_MATCH_AH_ESP is not set
# CONFIG_IP_NF_MATCH_LENGTH is not set
# CONFIG_IP_NF_MATCH_TTL is not set
# CONFIG_IP_NF_MATCH_TCPMSS is not set
# CONFIG_IP_NF_MATCH_HELPER is not set
# CONFIG_IP_NF_MATCH_STATE is not set
# CONFIG_IP_NF_MATCH_CONNTRACK is not set
# CONFIG_IP_NF_MATCH_UNCLEAN is not set
# CONFIG_IP_NF_MATCH_OWNER is not set
CONFIG_IP_NF_FILTER=y
# CONFIG_IP_NF_TARGET_REJECT is not set
# CONFIG_IP_NF_TARGET_MIRROR is not set
CONFIG_IP_NF_NAT=y
CONFIG_IP_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=y
# CONFIG_IP_NF_TARGET_REDIRECT is not set
# CONFIG_IP_NF_NAT_LOCAL is not set
# CONFIG_IP_NF_NAT_SNMP_BASIC is not set
CONFIG_IP_NF_NAT_FTP=y
# CONFIG_IP_NF_MANGLE is not set
# CONFIG_IP_NF_TARGET_LOG is not set
# CONFIG_IP_NF_TARGET_ULOG is not set
# CONFIG_IP_NF_TARGET_TCPMSS is not set
# CONFIG_IP_NF_ARPTABLES is not set
# CONFIG_IPV6 is not set
#
# SCTP Configuration (EXPERIMENTAL)
#
CONFIG_IPV6_SCTP__=y
# CONFIG_IP_SCTP is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_LLC is not set
# CONFIG_DECNET is not set
# CONFIG_BRIDGE is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_NET_DIVERT is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_FASTROUTE is not set
# CONFIG_NET_HW_FLOWCONTROL is not set
#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set
#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
CONFIG_NETDEVICES=y
#
# ARCnet devices
#
# CONFIG_ARCNET is not set
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set
# CONFIG_ETHERTAP is not set
#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
CONFIG_NET_VENDOR_3COM=y
CONFIG_VORTEX=m
#
# Tulip family network device support
#
# CONFIG_NET_TULIP is not set
# CONFIG_HP100 is not set
CONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
# CONFIG_AMD8111_ETH is not set
# CONFIG_ADAPTEC_STARFIRE is not set
# CONFIG_B44 is not set
# CONFIG_DGRS is not set
# CONFIG_EEPRO100 is not set
CONFIG_E100=y
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_8139CP is not set
CONFIG_8139TOO=y
# CONFIG_8139TOO_PIO is not set
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_8139TOO_8129 is not set
# CONFIG_8139_OLD_RX_RESET is not set
# CONFIG_SIS900 is not set
# CONFIG_EPIC100 is not set
# CONFIG_SUNDANCE is not set
# CONFIG_TLAN is not set
# CONFIG_VIA_RHINE is not set
#
# Ethernet (1000 Mbit)
#
# CONFIG_ACENIC is not set
# CONFIG_DL2K is not set
# CONFIG_E1000 is not set
# CONFIG_NS83820 is not set
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
# CONFIG_R8169 is not set
# CONFIG_SK98LIN is not set
# CONFIG_TIGON3 is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
# CONFIG_PLIP is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
#
# Wireless LAN (non-hamradio)
#
# CONFIG_NET_RADIO is not set
#
# Token Ring devices (depends on LLC=y)
#
# CONFIG_NET_FC is not set
# CONFIG_RCPCI is not set
# CONFIG_SHAPER is not set
#
# Wan interfaces
#
# CONFIG_WAN is not set
#
# Amateur Radio support
#
# CONFIG_HAMRADIO is not set
#
# IrDA (infrared) support
#
# CONFIG_IRDA is not set
#
# ISDN subsystem
#
# CONFIG_ISDN_BOOL is not set
#
# Telephony Support
#
# CONFIG_PHONE is not set
#
# Input device support
#
CONFIG_INPUT=y
#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_EVBUG is not set
#
# Input I/O drivers
#
# CONFIG_GAMEPORT is not set
CONFIG_SOUND_GAMEPORT=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
# CONFIG_SERIO_SERPORT is not set
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set
#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_SERIAL_NONSTANDARD is not set
#
# Serial drivers
#
CONFIG_SERIAL_8250=y
# CONFIG_SERIAL_8250_CONSOLE is not set
# CONFIG_SERIAL_8250_EXTENDED is not set
#
# Non-8250 serial port support
#
CONFIG_SERIAL_CORE=y
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
# CONFIG_PRINTER is not set
# CONFIG_PPDEV is not set
# CONFIG_TIPAR is not set
#
# I2C support
#
# CONFIG_I2C is not set
#
# I2C Hardware Sensors Mainboard support
#
#
# I2C Hardware Sensors Chip support
#
#
# Mice
#
# CONFIG_BUSMOUSE is not set
# CONFIG_QIC02_TAPE is not set
#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
# CONFIG_INTEL_RNG is not set
# CONFIG_AMD_RNG is not set
# CONFIG_NVRAM is not set
CONFIG_RTC=y
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_APPLICOM is not set
# CONFIG_SONYPI is not set
#
# Ftape, the floppy tape device driver
#
# CONFIG_FTAPE is not set
CONFIG_AGP=y
# CONFIG_AGP3 is not set
CONFIG_AGP_INTEL=y
CONFIG_AGP_VIA=y
# CONFIG_AGP_AMD is not set
# CONFIG_AGP_SIS is not set
# CONFIG_AGP_ALI is not set
# CONFIG_AGP_SWORKS is not set
# CONFIG_AGP_AMD_8151 is not set
CONFIG_DRM=y
# CONFIG_DRM_TDFX is not set
CONFIG_DRM_R128=y
# CONFIG_DRM_RADEON is not set
# CONFIG_DRM_I810 is not set
# CONFIG_DRM_I830 is not set
# CONFIG_DRM_MGA is not set
# CONFIG_MWAVE is not set
# CONFIG_RAW_DRIVER is not set
#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set
#
# File systems
#
# CONFIG_QUOTA is not set
# CONFIG_AUTOFS_FS is not set
CONFIG_AUTOFS4_FS=y
# CONFIG_REISERFS_FS is not set
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
# CONFIG_EXT3_FS_POSIX_ACL is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FAT_FS=m
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=m
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
CONFIG_TMPFS=y
CONFIG_RAMFS=y
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
# CONFIG_ZISOFS is not set
# CONFIG_JFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_NTFS_FS is not set
# CONFIG_HPFS_FS is not set
CONFIG_PROC_FS=y
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
# CONFIG_DEVFS_DEBUG is not set
CONFIG_DEVPTS_FS=y
# CONFIG_QNX4FS_FS is not set
# CONFIG_ROMFS_FS is not set
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
# CONFIG_SYSV_FS is not set
CONFIG_UDF_FS=y
# CONFIG_UFS_FS is not set
CONFIG_XFS_FS=y
# CONFIG_XFS_RT is not set
# CONFIG_XFS_QUOTA is not set
# CONFIG_XFS_POSIX_ACL is not set
#
# Network File Systems
#
# CONFIG_CODA_FS is not set
# CONFIG_INTERMEZZO_FS is not set
# CONFIG_NFS_FS is not set
# CONFIG_NFSD is not set
# CONFIG_EXPORTFS is not set
# CONFIG_CIFS is not set
CONFIG_SMB_FS=y
CONFIG_SMB_NLS_DEFAULT=y
CONFIG_SMB_NLS_REMOTE="cp850"
# CONFIG_NCP_FS is not set
# CONFIG_AFS_FS is not set
CONFIG_FS_MBCACHE=y
#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
CONFIG_SMB_NLS=y
CONFIG_NLS=y
#
# Native Language Support
#
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_437=m
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
CONFIG_NLS_CODEPAGE_850=m
CONFIG_NLS_CODEPAGE_852=m
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_936 is not set
# CONFIG_NLS_CODEPAGE_950 is not set
# CONFIG_NLS_CODEPAGE_932 is not set
# CONFIG_NLS_CODEPAGE_949 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
# CONFIG_NLS_ISO8859_8 is not set
# CONFIG_NLS_CODEPAGE_1250 is not set
# CONFIG_NLS_CODEPAGE_1251 is not set
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_2=m
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
CONFIG_NLS_UTF8=m
#
# Graphics support
#
CONFIG_FB=y
# CONFIG_FB_CLGEN is not set
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_IMSTT is not set
CONFIG_FB_VGA16=y
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
# CONFIG_FB_HGA is not set
# CONFIG_FB_RIVA is not set
# CONFIG_FB_I810 is not set
# CONFIG_FB_MATROX is not set
# CONFIG_FB_RADEON is not set
CONFIG_FB_ATY128=y
# CONFIG_FB_ATY is not set
# CONFIG_FB_SIS is not set
# CONFIG_FB_NEOMAGIC is not set
# CONFIG_FB_3DFX is not set
# CONFIG_FB_VOODOO1 is not set
# CONFIG_FB_TRIDENT is not set
# CONFIG_FB_PM3 is not set
# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_MDA_CONSOLE is not set
CONFIG_DUMMY_CONSOLE=y
# CONFIG_FRAMEBUFFER_CONSOLE is not set
#
# Sound
#
CONFIG_SOUND=y
#
# Open Sound System
#
CONFIG_SOUND_PRIME=y
# CONFIG_SOUND_BT878 is not set
# CONFIG_SOUND_CMPCI is not set
CONFIG_SOUND_EMU10K1=m
# CONFIG_MIDI_EMU10K1 is not set
# CONFIG_SOUND_FUSION is not set
# CONFIG_SOUND_CS4281 is not set
# CONFIG_SOUND_ES1370 is not set
# CONFIG_SOUND_ES1371 is not set
# CONFIG_SOUND_ESSSOLO1 is not set
# CONFIG_SOUND_MAESTRO is not set
# CONFIG_SOUND_MAESTRO3 is not set
# CONFIG_SOUND_ICH is not set
# CONFIG_SOUND_RME96XX is not set
# CONFIG_SOUND_SONICVIBES is not set
# CONFIG_SOUND_TRIDENT is not set
# CONFIG_SOUND_MSNDCLAS is not set
# CONFIG_SOUND_MSNDPIN is not set
# CONFIG_SOUND_VIA82CXXX is not set
# CONFIG_SOUND_OSS is not set
#
# Advanced Linux Sound Architecture
#
# CONFIG_SND is not set
#
# USB support
#
CONFIG_USB=y
# CONFIG_USB_DEBUG is not set
#
# Miscellaneous USB options
#
CONFIG_USB_DEVICEFS=y
# CONFIG_USB_BANDWIDTH is not set
# CONFIG_USB_DYNAMIC_MINORS is not set
#
# USB Host Controller Drivers
#
# CONFIG_USB_EHCI_HCD is not set
# CONFIG_USB_OHCI_HCD is not set
CONFIG_USB_UHCI_HCD=y
#
# USB Device Class drivers
#
# CONFIG_USB_AUDIO is not set
# CONFIG_USB_BLUETOOTH_TTY is not set
# CONFIG_USB_MIDI is not set
# CONFIG_USB_ACM is not set
# CONFIG_USB_PRINTER is not set
CONFIG_USB_STORAGE=y
# CONFIG_USB_STORAGE_DEBUG is not set
# CONFIG_USB_STORAGE_DATAFAB is not set
# CONFIG_USB_STORAGE_FREECOM is not set
# CONFIG_USB_STORAGE_ISD200 is not set
# CONFIG_USB_STORAGE_DPCM is not set
# CONFIG_USB_STORAGE_HP8200e is not set
# CONFIG_USB_STORAGE_SDDR09 is not set
# CONFIG_USB_STORAGE_SDDR55 is not set
# CONFIG_USB_STORAGE_JUMPSHOT is not set
#
# USB Human Interface Devices (HID)
#
# CONFIG_USB_HID is not set
#
# USB HID Boot Protocol drivers
#
# CONFIG_USB_KBD is not set
# CONFIG_USB_MOUSE is not set
# CONFIG_USB_AIPTEK is not set
# CONFIG_USB_WACOM is not set
# CONFIG_USB_POWERMATE is not set
# CONFIG_USB_XPAD is not set
#
# USB Imaging devices
#
# CONFIG_USB_MDC800 is not set
CONFIG_USB_SCANNER=m
# CONFIG_USB_MICROTEK is not set
# CONFIG_USB_HPUSBSCSI is not set
#
# USB Multimedia devices
#
# CONFIG_USB_DABUSB is not set
#
# Video4Linux support is needed for USB Multimedia device support
#
#
# USB Network adaptors
#
# CONFIG_USB_CATC is not set
# CONFIG_USB_CDCETHER is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_RTL8150 is not set
# CONFIG_USB_USBNET is not set
#
# USB port drivers
#
# CONFIG_USB_USS720 is not set
#
# USB Serial Converter support
#
# CONFIG_USB_SERIAL is not set
#
# USB Miscellaneous drivers
#
# CONFIG_USB_TIGL is not set
# CONFIG_USB_AUERSWALD is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_BRLVGER is not set
# CONFIG_USB_LCD is not set
# CONFIG_USB_TEST is not set
#
# Bluetooth support
#
# CONFIG_BT is not set
#
# Profiling support
#
# CONFIG_PROFILING is not set
#
# Kernel hacking
#
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_IOVIRT is not set
CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_SPINLOCK is not set
CONFIG_KALLSYMS=y
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_FRAME_POINTER is not set
#
# Security options
#
# CONFIG_SECURITY is not set
#
# Cryptographic options
#
CONFIG_CRYPTO=y
# CONFIG_CRYPTO_HMAC is not set
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_MD4 is not set
# CONFIG_CRYPTO_MD5 is not set
CONFIG_CRYPTO_SHA1=y
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_DES is not set
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_TWOFISH is not set
# CONFIG_CRYPTO_SERPENT is not set
# CONFIG_CRYPTO_TEST is not set
#
# Library routines
#
CONFIG_CRC32=y
CONFIG_X86_BIOS_REBOOT=y
______________________________________________________
Få den nye Yahoo! Messenger på http://no.messenger.yahoo.com/
Nye ikoner og bakgrunner, webkamera med superkvalitet og dobbelt så morsom
^ permalink raw reply
* Re: Ping a DNS???
From: Hal MacArgle @ 2003-01-10 20:02 UTC (permalink / raw)
To: linux-newbie
In-Reply-To: <03011015315202.31603@unix.pa3gcu>
On 01-10, pa3gcu wrote:
> On Friday 10 January 2003 14:09, Hal MacArgle wrote:
> > Greetings: Contemplating an ISP change I thought I'd ping the present
> > thence the proposed DNS's to evaluate the round trip time..
> >
> > The present, 204.97.4.2, returned it's RTT to be expected.. The
> > proposed, 65.196.16.3, returned "100% packet loss" - not expected.
>
> You forgot one thing, some ISP's block pings, have you tryed to actually use
> 65.196.16.3 as your DNS,?? i have and its quick...
Greetings Richard: Yes I did and it is about 35mS
faster than the original.. I guess I was confused that the
Administrator was "allowed" to turn off the ping ANSWER.. I'd never
seen that before. I suspect it's done to minimize spurious pings for
hours, whatever.. I, now, remember we had that problem with Ham AX25.
Any way - my learning process continues, eh?
> BTW;
>
> Your replt too field is now ok, but i guess you knew that.
> Regards Richard
> pa3gcu@zeelandnet.nl
> http://people.zeelandnet.nl/pa3gcu/
UtHo: I had no idea my Reply To: field was wrong in
the past.. I have changed nothing. It's in, and has been for some
time, in my .muttrc file.. Let me make a quick check: According to
the date I've not made a change to .muttrc since November 2001.. Did
you warn me before??
Vy 73, and, as usual - appreciate!!
Hal - in Terra Alta, WV - Slackware GNU/Linux 8.0 (2.4.13)
haltec@iceweb.net | w8mch@iceweb.net
Proprietary Formats Unacceptable
.
-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs
^ permalink raw reply
* Re: FW: Fastest possible UDMA - how?
From: Valdis.Kletnieks @ 2003-01-10 20:09 UTC (permalink / raw)
To: Manish Lachwani; +Cc: linux-kernel, Michael.Knigge
In-Reply-To: <20030110192727.63417.qmail@web20502.mail.yahoo.com>
[-- Attachment #1: Type: text/plain, Size: 327 bytes --]
On Fri, 10 Jan 2003 11:27:27 PST, Manish Lachwani said:
> If the drives support UDMA 2, then the controller will
> operate in UDMA 2. In that case, the IDENTIFY
> information will show UDMA 2 for UDMA mode selected
> and UDMA 2 for UDMA mode supported.
Which totally fails to tell you that the controller *SUPPORTS* udma-5.
[-- Attachment #2: Type: application/pgp-signature, Size: 226 bytes --]
^ permalink raw reply
* Generic RTC driver in 2.4.x
From: Geert Uytterhoeven @ 2003-01-10 20:05 UTC (permalink / raw)
To: Alan Cox, parisc-linux, Linux/PPC Development
Cc: Linux Kernel Development, Linux/m68k
In-Reply-To: <Pine.GSO.4.21.0301051535430.10519-100000@vervain.sonytel.be>
Unfortunately I didn't receive any feedback from the pa-risc and ppc people
after my previous posting last Sunday.
Alan, I'm explicitly sending it to you for inclusion in your ac tree.
I intend to send it to Marcelo after the weekend.
Changes since last Sunday:
- fix spelling of `automatically' (from Geoffrey Lee <glee@gnupilgrims.org>)
- misc_register() and create_proc_read_entry() can fail
(from mikal@stillhq.com in 2.5.x)
- create_proc_read_entry() depends on CONFIG_PROC_FS
(from mikal@stillhq.com in 2.5.x)
The following patch adds the generic RTC driver to 2.4.20 (applies fine to
2.4.21-pre3). This driver provides a /dev/rtc-compatible interface to the real
time clock on machines without a PC-style RTC chip. It is used as the primary
RTC driver on m68k, pa-risc, and ppc. This driver is already present in 2.5.x.
Pa-risc and ppc people (any other users?), please send me your enhancements (or
just ack if none are necessary), so I can send genrtc to Marcelo.
Thanks!
Documentation/Configure.help | 28 ++
arch/m68k/config.in | 5
arch/m68k/kernel/m68k_ksyms.c | 5
arch/m68k/kernel/setup.c | 3
arch/m68k/q40/config.c | 41 +++
drivers/char/Makefile | 1
drivers/char/genrtc.c | 533 ++++++++++++++++++++++++++++++++++++++++++
include/asm-m68k/machdep.h | 4
include/asm-m68k/rtc.h | 44 +++
include/linux/rtc.h | 28 ++
10 files changed, 687 insertions(+), 5 deletions(-)
--- linux-2.4.20/Documentation/Configure.help Tue Oct 29 18:40:45 2002
+++ linux-genrtc-2.4.20/Documentation/Configure.help Fri Jan 10 20:54:52 2003
@@ -18959,6 +18959,34 @@
The module is called rtc.o. If you want to compile it as a module,
say M here and read <file:Documentation/modules.txt>.
+Generic Real Time Clock Support
+CONFIG_GEN_RTC
+ If you say Y here and create a character special file /dev/rtc with
+ major number 10 and minor number 135 using mknod ("man mknod"), you
+ will get access to the real time clock (or hardware clock) built
+ into your computer.
+
+ In 2.4 and later kernels this is the only way to set and get rtc
+ time on m68k systems so it is highly recommended.
+
+ It reports status information via the file /proc/driver/rtc and its
+ behaviour is set by various ioctls on /dev/rtc. If you enable the
+ "extended RTC operation" below it will also provide an emulation
+ for RTC_UIE which is required by some programs and may improve
+ precision in some cases.
+
+ This driver is also available as a module ( = code which can be
+ inserted in and removed from the running kernel whenever you want).
+ The module is called genrtc.o. If you want to compile it as a module,
+ say M here and read <file:Documentation/modules.txt>. To load the
+ module automatically add 'alias char-major-10-135 genrtc' to your
+ /etc/modules.conf
+
+Extended RTC operation
+CONFIG_GEN_RTC_X
+ Provides an emulation for RTC_UIE which is required by some programs
+ and may improve precision of the generic RTC support in some cases.
+
Tadpole ANA H8 Support
CONFIG_H8
The Hitachi H8/337 is a microcontroller used to deal with the power
--- linux-2.4.20/arch/m68k/config.in Fri Sep 13 10:14:59 2002
+++ linux-genrtc-2.4.20/arch/m68k/config.in Fri Jan 10 20:54:25 2003
@@ -517,8 +517,11 @@
if [ "$CONFIG_SUN3" = "y" ]; then
define_bool CONFIG_GEN_RTC y
else
- bool 'Generic /dev/rtc emulation' CONFIG_GEN_RTC
+ tristate 'Generic /dev/rtc emulation' CONFIG_GEN_RTC
fi
+fi
+if [ "$CONFIG_GEN_RTC" != "n" ]; then
+ bool ' Extended RTC operation' CONFIG_GEN_RTC_X
fi
bool 'Unix98 PTY support' CONFIG_UNIX98_PTYS
if [ "$CONFIG_UNIX98_PTYS" = "y" ]; then
--- linux-2.4.20/arch/m68k/kernel/m68k_ksyms.c Thu Jan 4 22:00:55 2001
+++ linux-genrtc-2.4.20/arch/m68k/kernel/m68k_ksyms.c Fri Jan 10 20:54:25 2003
@@ -18,6 +18,7 @@
#include <asm/checksum.h>
#include <asm/hardirq.h>
#include <asm/softirq.h>
+#include <asm/rtc.h>
asmlinkage long long __ashldi3 (long long, int);
asmlinkage long long __ashrdi3 (long long, int);
@@ -49,6 +50,10 @@
EXPORT_SYMBOL(kernel_set_cachemode);
#endif /* !CONFIG_SUN3 */
EXPORT_SYMBOL(m68k_debug_device);
+EXPORT_SYMBOL(mach_hwclk);
+EXPORT_SYMBOL(mach_get_ss);
+EXPORT_SYMBOL(mach_get_rtc_pll);
+EXPORT_SYMBOL(mach_set_rtc_pll);
EXPORT_SYMBOL(dump_fpu);
EXPORT_SYMBOL(dump_thread);
EXPORT_SYMBOL(strnlen);
--- linux-2.4.20/arch/m68k/kernel/setup.c Fri Sep 13 10:15:01 2002
+++ linux-genrtc-2.4.20/arch/m68k/kernel/setup.c Fri Jan 10 20:54:25 2003
@@ -90,6 +90,9 @@
void (*mach_gettod) (int*, int*, int*, int*, int*, int*);
int (*mach_hwclk) (int, struct rtc_time*) = NULL;
int (*mach_set_clock_mmss) (unsigned long) = NULL;
+unsigned int (*mach_get_ss)(void) = NULL;
+int (*mach_get_rtc_pll)(struct rtc_pll_info *) = NULL;
+int (*mach_set_rtc_pll)(struct rtc_pll_info *) = NULL;
void (*mach_reset)( void );
void (*mach_halt)( void ) = NULL;
void (*mach_power_off)( void ) = NULL;
--- linux-2.4.20/arch/m68k/q40/config.c Fri Sep 13 10:15:02 2002
+++ linux-genrtc-2.4.20/arch/m68k/q40/config.c Fri Jan 10 20:54:25 2003
@@ -58,7 +58,10 @@
extern void q40_gettod (int *year, int *mon, int *day, int *hour,
int *min, int *sec);
extern int q40_hwclk (int, struct rtc_time *);
+extern unsigned int q40_get_ss (void);
extern int q40_set_clock_mmss (unsigned long);
+static int q40_get_rtc_pll(struct rtc_pll_info *pll);
+static int q40_set_rtc_pll(struct rtc_pll_info *pll);
extern void q40_reset (void);
void q40_halt(void);
extern void q40_waitbut(void);
@@ -196,6 +199,9 @@
mach_gettimeoffset = q40_gettimeoffset;
mach_gettod = q40_gettod;
mach_hwclk = q40_hwclk;
+ mach_get_ss = q40_get_ss;
+ mach_get_rtc_pll = q40_get_rtc_pll;
+ mach_set_rtc_pll = q40_set_rtc_pll;
mach_set_clock_mmss = q40_set_clock_mmss;
mach_reset = q40_reset;
@@ -331,6 +337,11 @@
return 0;
}
+unsigned int q40_get_ss()
+{
+ return bcd2bin(Q40_RTC_SECS);
+}
+
/*
* Set the minutes and seconds from seconds value 'nowtime'. Fail if
* clock is out by > 30 minutes. Logic lifted from atari code.
@@ -362,3 +373,33 @@
return retval;
}
+
+/* get and set PLL calibration of RTC clock */
+#define Q40_RTC_PLL_MASK ((1<<5)-1)
+#define Q40_RTC_PLL_SIGN (1<<5)
+
+static int q40_get_rtc_pll(struct rtc_pll_info *pll)
+{
+ int tmp=Q40_RTC_CTRL;
+ pll->pll_value = tmp & Q40_RTC_PLL_MASK;
+ if (tmp & Q40_RTC_PLL_SIGN)
+ pll->pll_value = -pll->pll_value;
+ pll->pll_max=31;
+ pll->pll_min=-31;
+ pll->pll_posmult=512;
+ pll->pll_negmult=256;
+ pll->pll_clock=125829120;
+ return 0;
+ }
+
+static int q40_set_rtc_pll(struct rtc_pll_info *pll)
+{
+ if (!pll->pll_ctrl){
+ /* the docs are a bit unclear so I am doublesetting RTC_WRITE here ... */
+ int tmp=(pll->pll_value & 31) | (pll->pll_value<0 ? 32 : 0) | Q40_RTC_WRITE;
+ Q40_RTC_CTRL |= Q40_RTC_WRITE;
+ Q40_RTC_CTRL = tmp;
+ Q40_RTC_CTRL &= ~(Q40_RTC_WRITE);
+ return 0;
+ } else return -EINVAL;
+}
--- linux-2.4.20/drivers/char/Makefile Wed Nov 27 11:02:06 2002
+++ linux-genrtc-2.4.20/drivers/char/Makefile Fri Jan 10 20:54:25 2003
@@ -222,6 +222,7 @@
obj-$(CONFIG_PC110_PAD) += pc110pad.o
obj-$(CONFIG_MK712_MOUSE) += mk712.o
obj-$(CONFIG_RTC) += rtc.o
+obj-$(CONFIG_GEN_RTC) += genrtc.o
obj-$(CONFIG_EFI_RTC) += efirtc.o
ifeq ($(CONFIG_PPC),)
obj-$(CONFIG_NVRAM) += nvram.o
--- linux-2.4.20/drivers/char/genrtc.c Thu Jan 1 01:00:00 1970
+++ linux-genrtc-2.4.20/drivers/char/genrtc.c Fri Jan 10 20:54:52 2003
@@ -0,0 +1,533 @@
+/*
+ * Real Time Clock interface for q40 and other m68k machines
+ * emulate some RTC irq capabilities in software
+ *
+ * Copyright (C) 1999 Richard Zidlicky
+ *
+ * based on Paul Gortmaker's rtc.c device and
+ * Sam Creasey Generic rtc driver
+ *
+ * This driver allows use of the real time clock (built into
+ * nearly all computers) from user space. It exports the /dev/rtc
+ * interface supporting various ioctl() and also the /proc/dev/rtc
+ * pseudo-file for status information.
+ *
+ * The ioctls can be used to set the interrupt behaviour where
+ * supported.
+ *
+ * The /dev/rtc interface will block on reads until an interrupt
+ * has been received. If a RTC interrupt has already happened,
+ * it will output an unsigned long and then block. The output value
+ * contains the interrupt status in the low byte and the number of
+ * interrupts since the last read in the remaining high bytes. The
+ * /dev/rtc interface can also be used with the select(2) call.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version
+ * 2 of the License, or (at your option) any later version.
+ *
+
+ * 1.01 fix for 2.3.X rz@linux-m68k.org
+ * 1.02 merged with code from genrtc.c rz@linux-m68k.org
+ * 1.03 make it more portable zippel@linux-m68k.org
+ * 1.04 removed useless timer code rz@linux-m68k.org
+ * 1.05 portable RTC_UIE emulation rz@linux-m68k.org
+ * 1.06 set_rtc_time can return an error trini@kernel.crashing.org
+ */
+
+#define RTC_VERSION "1.06"
+
+#include <linux/module.h>
+#include <linux/config.h>
+#include <linux/errno.h>
+#include <linux/miscdevice.h>
+#include <linux/fcntl.h>
+
+#include <linux/rtc.h>
+#include <linux/init.h>
+#include <linux/poll.h>
+#include <linux/proc_fs.h>
+
+#include <asm/uaccess.h>
+#include <asm/system.h>
+#include <asm/rtc.h>
+
+/*
+ * We sponge a minor off of the misc major. No need slurping
+ * up another valuable major dev number for this. If you add
+ * an ioctl, make sure you don't conflict with SPARC's RTC
+ * ioctls.
+ */
+
+static DECLARE_WAIT_QUEUE_HEAD(gen_rtc_wait);
+
+static int gen_rtc_ioctl(struct inode *inode, struct file *file,
+ unsigned int cmd, unsigned long arg);
+
+/*
+ * Bits in gen_rtc_status.
+ */
+
+#define RTC_IS_OPEN 0x01 /* means /dev/rtc is in use */
+
+unsigned char gen_rtc_status; /* bitmapped status byte. */
+unsigned long gen_rtc_irq_data; /* our output to the world */
+
+/* months start at 0 now */
+unsigned char days_in_mo[] =
+{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
+
+static int irq_active;
+
+#ifdef CONFIG_GEN_RTC_X
+struct tq_struct genrtc_task;
+static struct timer_list timer_task;
+
+static unsigned int oldsecs;
+static int lostint;
+static int tt_exp;
+
+void gen_rtc_timer(unsigned long data);
+
+static volatile int stask_active; /* schedule_task */
+static volatile int ttask_active; /* timer_task */
+static int stop_rtc_timers; /* don't requeue tasks */
+static spinlock_t gen_rtc_lock = SPIN_LOCK_UNLOCKED;
+
+/*
+ * Routine to poll RTC seconds field for change as often as posible,
+ * after first RTC_UIE use timer to reduce polling
+ */
+void genrtc_troutine(void *data)
+{
+ unsigned int tmp = get_rtc_ss();
+
+ if (stop_rtc_timers) {
+ stask_active = 0;
+ return;
+ }
+
+ if (oldsecs != tmp){
+ oldsecs = tmp;
+
+ timer_task.function = gen_rtc_timer;
+ timer_task.expires = jiffies + HZ - (HZ/10);
+ tt_exp=timer_task.expires;
+ ttask_active=1;
+ stask_active=0;
+ add_timer(&timer_task);
+
+ gen_rtc_interrupt(0);
+ } else if (schedule_task(&genrtc_task) == 0)
+ stask_active = 0;
+}
+
+void gen_rtc_timer(unsigned long data)
+{
+ lostint = get_rtc_ss() - oldsecs ;
+ if (lostint<0)
+ lostint = 60 - lostint;
+ if (time_after(jiffies, tt_exp))
+ printk(KERN_INFO "genrtc: timer task delayed by %ld jiffies\n",
+ jiffies-tt_exp);
+ ttask_active=0;
+ stask_active=1;
+ if ((schedule_task(&genrtc_task) == 0))
+ stask_active = 0;
+}
+
+/*
+ * call gen_rtc_interrupt function to signal an RTC_UIE,
+ * arg is unused.
+ * Could be invoked either from a real interrupt handler or
+ * from some routine that periodically (eg 100HZ) monitors
+ * whether RTC_SECS changed
+ */
+void gen_rtc_interrupt(unsigned long arg)
+{
+ /* We store the status in the low byte and the number of
+ * interrupts received since the last read in the remainder
+ * of rtc_irq_data. */
+
+ gen_rtc_irq_data += 0x100;
+ gen_rtc_irq_data &= ~0xff;
+ gen_rtc_irq_data |= RTC_UIE;
+
+ if (lostint){
+ printk("genrtc: system delaying clock ticks?\n");
+ /* increment count so that userspace knows something is wrong */
+ gen_rtc_irq_data += ((lostint-1)<<8);
+ lostint = 0;
+ }
+
+ wake_up_interruptible(&gen_rtc_wait);
+}
+
+/*
+ * Now all the various file operations that we export.
+ */
+static ssize_t gen_rtc_read(struct file *file, char *buf,
+ size_t count, loff_t *ppos)
+{
+ DECLARE_WAITQUEUE(wait, current);
+ unsigned long data;
+ ssize_t retval;
+
+ if (count != sizeof (unsigned int) && count != sizeof (unsigned long))
+ return -EINVAL;
+
+ if (file->f_flags & O_NONBLOCK && !gen_rtc_irq_data)
+ return -EAGAIN;
+
+ add_wait_queue(&gen_rtc_wait, &wait);
+ retval = -ERESTARTSYS;
+
+ while (1) {
+ set_current_state(TASK_INTERRUPTIBLE);
+ data = xchg(&gen_rtc_irq_data, 0);
+ if (data)
+ break;
+ if (signal_pending(current))
+ goto out;
+ schedule();
+ }
+
+ /* first test allows optimizer to nuke this case for 32-bit machines */
+ if (sizeof (int) != sizeof (long) && count == sizeof (unsigned int)) {
+ unsigned int uidata = data;
+ retval = put_user(uidata, (unsigned long *)buf);
+ }
+ else {
+ retval = put_user(data, (unsigned long *)buf);
+ }
+ if (!retval)
+ retval = sizeof(unsigned long);
+ out:
+ current->state = TASK_RUNNING;
+ remove_wait_queue(&gen_rtc_wait, &wait);
+
+ return retval;
+}
+
+static unsigned int gen_rtc_poll(struct file *file,
+ struct poll_table_struct *wait)
+{
+ poll_wait(file, &gen_rtc_wait, wait);
+ if (gen_rtc_irq_data != 0)
+ return POLLIN | POLLRDNORM;
+ return 0;
+}
+
+#endif
+
+/*
+ * Used to disable/enable interrupts, only RTC_UIE supported
+ * We also clear out any old irq data after an ioctl() that
+ * meddles with the interrupt enable/disable bits.
+ */
+
+static inline void gen_clear_rtc_irq_bit(unsigned char bit)
+{
+#ifdef CONFIG_GEN_RTC_X
+ stop_rtc_timers = 1;
+ if (ttask_active){
+ del_timer_sync(&timer_task);
+ ttask_active = 0;
+ }
+ while (stask_active)
+ schedule();
+
+ spin_lock(&gen_rtc_lock);
+ irq_active = 0;
+ spin_unlock(&gen_rtc_lock);
+#endif
+}
+
+static inline int gen_set_rtc_irq_bit(unsigned char bit)
+{
+#ifdef CONFIG_GEN_RTC_X
+ spin_lock(&gen_rtc_lock);
+ if ( !irq_active ) {
+ irq_active = 1;
+ stop_rtc_timers = 0;
+ lostint = 0;
+ genrtc_task.routine = genrtc_troutine;
+ oldsecs = get_rtc_ss();
+ init_timer(&timer_task);
+
+ stask_active = 1;
+ if (schedule_task(&genrtc_task) == 0){
+ stask_active = 0;
+ }
+ }
+ spin_unlock(&gen_rtc_lock);
+ gen_rtc_irq_data = 0;
+ return 0;
+#else
+ return -EINVAL;
+#endif
+}
+
+static int gen_rtc_ioctl(struct inode *inode, struct file *file,
+ unsigned int cmd, unsigned long arg)
+{
+ struct rtc_time wtime;
+ struct rtc_pll_info pll;
+
+ switch (cmd) {
+
+ case RTC_PLL_GET:
+ if (get_rtc_pll(&pll))
+ return -EINVAL;
+ else
+ return copy_to_user((void *)arg, &pll, sizeof pll) ? -EFAULT : 0;
+
+ case RTC_PLL_SET:
+ if (!capable(CAP_SYS_TIME))
+ return -EACCES;
+ if (copy_from_user(&pll, (struct rtc_pll_info*)arg,
+ sizeof(pll)))
+ return -EFAULT;
+ return set_rtc_pll(&pll);
+
+ case RTC_UIE_OFF: /* disable ints from RTC updates. */
+ gen_clear_rtc_irq_bit(RTC_UIE);
+ return 0;
+
+ case RTC_UIE_ON: /* enable ints for RTC updates. */
+ return gen_set_rtc_irq_bit(RTC_UIE);
+
+ case RTC_RD_TIME: /* Read the time/date from RTC */
+ /* this doesn't get week-day, who cares */
+ memset(&wtime, 0, sizeof(wtime));
+ get_rtc_time(&wtime);
+
+ return copy_to_user((void *)arg, &wtime, sizeof(wtime)) ? -EFAULT : 0;
+
+ case RTC_SET_TIME: /* Set the RTC */
+ {
+ int year;
+ unsigned char leap_yr;
+
+ if (!capable(CAP_SYS_TIME))
+ return -EACCES;
+
+ if (copy_from_user(&wtime, (struct rtc_time *)arg,
+ sizeof(wtime)))
+ return -EFAULT;
+
+ year = wtime.tm_year + 1900;
+ leap_yr = ((!(year % 4) && (year % 100)) ||
+ !(year % 400));
+
+ if ((wtime.tm_mon < 0 || wtime.tm_mon > 11) || (wtime.tm_mday < 1))
+ return -EINVAL;
+
+ if (wtime.tm_mday < 0 || wtime.tm_mday >
+ (days_in_mo[wtime.tm_mon] + ((wtime.tm_mon == 1) && leap_yr)))
+ return -EINVAL;
+
+ if (wtime.tm_hour < 0 || wtime.tm_hour >= 24 ||
+ wtime.tm_min < 0 || wtime.tm_min >= 60 ||
+ wtime.tm_sec < 0 || wtime.tm_sec >= 60)
+ return -EINVAL;
+
+ return set_rtc_time(&wtime);
+ }
+ }
+
+ return -EINVAL;
+}
+
+/*
+ * We enforce only one user at a time here with the open/close.
+ * Also clear the previous interrupt data on an open, and clean
+ * up things on a close.
+ */
+
+static int gen_rtc_open(struct inode *inode, struct file *file)
+{
+ if (gen_rtc_status & RTC_IS_OPEN)
+ return -EBUSY;
+
+ MOD_INC_USE_COUNT;
+
+ gen_rtc_status |= RTC_IS_OPEN;
+ gen_rtc_irq_data = 0;
+ irq_active = 0;
+
+ return 0;
+}
+
+static int gen_rtc_release(struct inode *inode, struct file *file)
+{
+ /*
+ * Turn off all interrupts once the device is no longer
+ * in use and clear the data.
+ */
+
+ gen_clear_rtc_irq_bit(RTC_PIE|RTC_AIE|RTC_UIE);
+
+ gen_rtc_status &= ~RTC_IS_OPEN;
+ MOD_DEC_USE_COUNT;
+
+ return 0;
+}
+
+static int gen_rtc_read_proc(char *page, char **start, off_t off,
+ int count, int *eof, void *data);
+
+
+/*
+ * The various file operations we support.
+ */
+
+static struct file_operations gen_rtc_fops = {
+ owner: THIS_MODULE,
+#ifdef CONFIG_GEN_RTC_X
+ read: gen_rtc_read,
+ poll: gen_rtc_poll,
+#endif
+ ioctl: gen_rtc_ioctl,
+ open: gen_rtc_open,
+ release: gen_rtc_release
+};
+
+static struct miscdevice rtc_gen_dev =
+{
+ RTC_MINOR,
+ "rtc",
+ &gen_rtc_fops
+};
+
+int __init rtc_generic_init(void)
+{
+ int retval;
+
+ printk(KERN_INFO "Generic RTC Driver v%s\n", RTC_VERSION);
+
+ retval = misc_register(&rtc_gen_dev);
+ if(retval < 0)
+ return retval;
+
+#ifdef CONFIG_PROC_FS
+ if((create_proc_read_entry ("driver/rtc", 0, 0, gen_rtc_read_proc, NULL)) == NULL){
+ misc_deregister(&rtc_gen_dev);
+ return -ENOMEM;
+ }
+#endif
+
+ return 0;
+}
+
+static void __exit rtc_generic_exit(void)
+{
+ remove_proc_entry ("driver/rtc", NULL);
+ misc_deregister(&rtc_gen_dev);
+}
+
+module_init(rtc_generic_init);
+module_exit(rtc_generic_exit);
+EXPORT_NO_SYMBOLS;
+
+
+/*
+ * Info exported via "/proc/rtc".
+ */
+
+int gen_rtc_proc_output(char *buf)
+{
+ char *p;
+ struct rtc_time tm;
+ unsigned tmp;
+ struct rtc_pll_info pll;
+
+ p = buf;
+
+ get_rtc_time(&tm);
+
+ p += sprintf(p,
+ "rtc_time\t: %02d:%02d:%02d\n"
+ "rtc_date\t: %04d-%02d-%02d\n"
+ "rtc_epoch\t: %04u\n",
+ tm.tm_hour, tm.tm_min, tm.tm_sec,
+ tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, 1900);
+
+ tm.tm_hour=0;tm.tm_min=0;tm.tm_sec=0;
+
+ p += sprintf(p, "alarm\t\t: ");
+ if (tm.tm_hour <= 24)
+ p += sprintf(p, "%02d:", tm.tm_hour);
+ else
+ p += sprintf(p, "**:");
+
+ if (tm.tm_min <= 59)
+ p += sprintf(p, "%02d:", tm.tm_min);
+ else
+ p += sprintf(p, "**:");
+
+ if (tm.tm_sec <= 59)
+ p += sprintf(p, "%02d\n", tm.tm_sec);
+ else
+ p += sprintf(p, "**\n");
+
+ tmp= RTC_24H ;
+ p += sprintf(p,
+ "DST_enable\t: %s\n"
+ "BCD\t\t: %s\n"
+ "24hr\t\t: %s\n"
+ "square_wave\t: %s\n"
+ "alarm_IRQ\t: %s\n"
+ "update_IRQ\t: %s\n"
+ "periodic_IRQ\t: %s\n"
+ "periodic_freq\t: %ld\n"
+ "batt_status\t: %s\n",
+ (tmp & RTC_DST_EN) ? "yes" : "no",
+ (tmp & RTC_DM_BINARY) ? "no" : "yes",
+ (tmp & RTC_24H) ? "yes" : "no",
+ (tmp & RTC_SQWE) ? "yes" : "no",
+ (tmp & RTC_AIE) ? "yes" : "no",
+ irq_active ? "yes" : "no",
+ (tmp & RTC_PIE) ? "yes" : "no",
+ 0L /* freq */,
+ "okay" );
+ if (!get_rtc_pll(&pll))
+ p += sprintf(p,
+ "PLL adjustment\t: %d\n"
+ "PLL max +ve adjustment\t: %d\n"
+ "PLL max -ve adjustment\t: %d\n"
+ "PLL +ve adjustment factor\t: %d\n"
+ "PLL -ve adjustment factor\t: %d\n"
+ "PLL frequency\t: %ld\n",
+ pll.pll_value,
+ pll.pll_max,
+ pll.pll_min,
+ pll.pll_posmult,
+ pll.pll_negmult,
+ pll.pll_clock);
+ return p - buf;
+}
+
+static int gen_rtc_read_proc(char *page, char **start, off_t off,
+ int count, int *eof, void *data)
+{
+ int len = gen_rtc_proc_output (page);
+ if (len <= off+count) *eof = 1;
+ *start = page + off;
+ len -= off;
+ if (len>count) len = count;
+ if (len<0) len = 0;
+ return len;
+}
+
+
+MODULE_AUTHOR("Richard Zidlicky");
+MODULE_LICENSE("GPL");
+
+/*
+ * Local variables:
+ * compile-command: "m68k-linux-gcc -D__KERNEL__ -I../../include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -fno-strength-reduce -ffixed-a2 -c -o genrtc.o genrtc.c"
+ * End:
+ */
+
--- linux-2.4.20/include/asm-m68k/machdep.h Wed May 29 10:14:12 2002
+++ linux-genrtc-2.4.20/include/asm-m68k/machdep.h Fri Jan 10 20:54:25 2003
@@ -5,6 +5,7 @@
struct kbd_repeat;
struct mktime;
struct rtc_time;
+struct rtc_pll_info;
struct gendisk;
struct buffer_head;
@@ -29,6 +30,9 @@
extern void (*mach_gettod)(int *year, int *mon, int *day, int *hour,
int *min, int *sec);
extern int (*mach_hwclk)(int, struct rtc_time*);
+extern unsigned int (*mach_get_ss)(void);
+extern int (*mach_get_rtc_pll)(struct rtc_pll_info *);
+extern int (*mach_set_rtc_pll)(struct rtc_pll_info *);
extern int (*mach_set_clock_mmss)(unsigned long);
extern void (*mach_reset)( void );
extern void (*mach_halt)( void );
--- linux-2.4.20/include/asm-m68k/rtc.h Wed May 29 10:14:13 2002
+++ linux-genrtc-2.4.20/include/asm-m68k/rtc.h Fri Jan 10 20:54:25 2003
@@ -13,9 +13,8 @@
#ifdef __KERNEL__
-#include <linux/config.h>
#include <linux/rtc.h>
-#include <linux/delay.h>
+#include <asm/errno.h>
#include <asm/machdep.h>
#define RTC_PIE 0x40 /* periodic interrupt enable */
@@ -30,7 +29,48 @@
#define RTC_24H 0x02 /* 24 hour mode - else hours bit 7 means pm */
#define RTC_DST_EN 0x01 /* auto switch DST - works f. USA only */
+static inline void get_rtc_time(struct rtc_time *time)
+{
+ /*
+ * Only the values that we read from the RTC are set. We leave
+ * tm_wday, tm_yday and tm_isdst untouched. Even though the
+ * RTC has RTC_DAY_OF_WEEK, we ignore it, as it is only updated
+ * by the RTC when initially set to a non-zero value.
+ */
+ mach_hwclk(0, time);
+}
+static inline int set_rtc_time(struct rtc_time *time)
+{
+ return mach_hwclk(1, time);
+}
+
+static inline unsigned int get_rtc_ss(void)
+{
+ if (mach_get_ss)
+ return mach_get_ss();
+ else{
+ struct rtc_time h;
+
+ get_rtc_time(&h);
+ return h.tm_sec;
+ }
+}
+
+static inline int get_rtc_pll(struct rtc_pll_info *pll)
+{
+ if (mach_get_rtc_pll)
+ return mach_get_rtc_pll(pll);
+ else
+ return -EINVAL;
+}
+static inline int set_rtc_pll(struct rtc_pll_info *pll)
+{
+ if (mach_set_rtc_pll)
+ return mach_set_rtc_pll(pll);
+ else
+ return -EINVAL;
+}
#endif /* __KERNEL__ */
#endif /* _ASM__RTC_H */
--- linux-2.4.20/include/linux/rtc.h Mon Feb 19 09:47:19 2001
+++ linux-genrtc-2.4.20/include/linux/rtc.h Fri Jan 10 20:54:25 2003
@@ -39,10 +39,32 @@
struct rtc_time time; /* time the alarm is set to */
};
+/*
+ * Data structure to control PLL correction some better RTC feature
+ * pll_value is used to get or set current value of correction,
+ * the rest of the struct is used to query HW capabilities.
+ * This is modeled after the RTC used in Q40/Q60 computers but
+ * should be sufficiently flexible for other devices
+ *
+ * +ve pll_value means clock will run faster by
+ * pll_value*pll_posmult/pll_clock
+ * -ve pll_value means clock will run slower by
+ * pll_value*pll_negmult/pll_clock
+ */
+
+struct rtc_pll_info {
+ int pll_ctrl; /* placeholder for fancier control */
+ int pll_value; /* get/set correction value */
+ int pll_max; /* max +ve (faster) adjustment value */
+ int pll_min; /* max -ve (slower) adjustment value */
+ int pll_posmult; /* factor for +ve corection */
+ int pll_negmult; /* factor for -ve corection */
+ long pll_clock; /* base PLL frequency */
+};
/*
- * ioctl calls that are permitted to the /dev/rtc interface, if
- * CONFIG_RTC/CONFIG_EFI_RTC was enabled.
+ * ioctl calls that are permitted to the /dev/rtc interface, if
+ * any of the RTC drivers are enabled.
*/
#define RTC_AIE_ON _IO('p', 0x01) /* Alarm int. enable on */
@@ -66,4 +88,6 @@
#define RTC_WKALM_SET _IOW('p', 0x0f, struct rtc_wkalrm)/* Set wakeup alarm*/
#define RTC_WKALM_RD _IOR('p', 0x10, struct rtc_wkalrm)/* Get wakeup alarm*/
+#define RTC_PLL_GET _IOR('p', 0x11, struct rtc_pll_info) /* Get PLL correction */
+#define RTC_PLL_SET _IOW('p', 0x12, struct rtc_pll_info) /* Set PLL correction */
#endif /* _LINUX_RTC_H_ */
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply
* [BUG][2.5.55][SCSI] - DV failed to configure device
From: Shawn Starr @ 2003-01-10 20:06 UTC (permalink / raw)
To: Linux Kernel Mailing List
This machine is a Pentium 233MMX
AP/AX 53 Motherboard from AOpen
Adaptec SCSI card (if I remember the box said 2902)
This is the new Adaptec AIC7XXX driver not old one.
Here is from dmesg:
scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.26
<Adaptec 2902/04/10/15/20/30C SCSI adapter>
aic7850: Single Channel A, SCSI Id=7, 3/253 SCBs
scsi0:A:4:0: DV failed to configure device. Please file a bug report against
this driver.
Vendor: HP Model: T4000s Rev: 1.10
Type: Sequential-Access ANSI SCSI revision: 02
st: Version 20021214, fixed bufsize 32768, wrt 30720, s/g segs 256
Attached scsi tape st0 at scsi0, channel 0, id 4, lun 0
st0: try direct i/o: yes, max page reachable by HBA 1048575
--
Shawn Starr
UNIX Systems Administrator, Operations
Datawire Communication Networks Inc.
10 Carlson Court, Suite 300
Toronto, ON, M9W 6L2
T: 416-213-2001 ext 179 F: 416-213-2008
shawn.starr@datawire.net
"The power to Transact" - http://www.datawire.net
^ permalink raw reply
* Re: [parisc-linux] ibm-disk on a hp 735/125
From: Grant Grundler @ 2003-01-10 19:51 UTC (permalink / raw)
To: Nahkola Mikko; +Cc: parisc-linux
In-Reply-To: <20030110145800.GH2160@aurinko.ntc.nokia.com>
On Fri, Jan 10, 2003 at 04:58:00PM +0200, Nahkola Mikko wrote:
> time these boxes were made, there were supposed to be certain differences
> between HP and regular disks. Or maybe that was just HP marketing.
testing. HP tests all it's HPUX products so they are usable in
"High Availability" configurations and work with all HPUX SCSI HBAs.
> At any rate, there _was_ (and still is, BTW) a way to recognize a HP disk
> by the firmware - and there were differences between "workstation" and
> "server" disks too, _and_ IIRC "workstation" disks weren't "expected to
> work" in servers, the other way round it was "expected to work" but "unsupported"
> or something. Don't remember.
workstation and server disks were for a long time seperate products
and tested seperately. The reason was cost and time to market.
If you test something rigorously expect the testing to (a) take longer
and (b) expose problems.
While they might still be seperate products, I think they all go through
the same testing these days - maybe with different hosts/configs.
Testing SCSI disks and SCSI RAID arrays in a multi-initiator
configuration exposes problems workstation/PC users rarely, if ever, see.
> But since HP-UX 10.20 by the latest, probably earlier too, some people
> have been using whatever disks they get as long as the SCSI interfaces
> are compatible. I've never heard of problems.
Well, "works for me" is good enough for most linux users.
It's not when one is involved with any kind of support contract.
hth,
grant
^ permalink raw reply
* Re: [PATCH] Fix atyfb
From: James Simmons @ 2003-01-10 20:00 UTC (permalink / raw)
To: Paul Mackerras; +Cc: linux-kernel
In-Reply-To: <15902.13445.441132.875876@argo.ozlabs.ibm.com>
Applied.
^ permalink raw reply
* Fwd: Resetting secondary video adapter
From: Jon Smirl @ 2003-01-10 19:48 UTC (permalink / raw)
To: fbdev
I have been getting requests for this. It is from the
svgalib people.....
--- Jon Smirl <jonsmirl@yahoo.com> wrote:
> Date: Sun, 5 Jan 2003 21:34:42 -0800 (PST)
> From: Jon Smirl <jonsmirl@yahoo.com>
> Subject: Resetting secondary video adapter
> To: dri-devel <dri-devel@lists.sourceforge.net>
>
> I ran across this program for resetting secondary
> adapters.
>
http://www.arava.co.il/matan/svgalib/hypermail/1660.html
> Inside of the download you can build vbios.vm86. The
> vm86 version worked on my Rage128. The x86emu
> version
> runs, but doesn't reset the adapter.
>
> I had tried hacking this code out of X86 without
> success. I also tried moding lrmi. lrmi needs more
> of
> the bios vectors, entry points, etc set up.
>
> There are later versions of x86emu here
> ftp://ftp.scitechsoft.com/devel/x86emu but I can get
> them to build.
>
> On a related note, in redhat-config-xfree86 the
> probe
> monitor button is always disabled on the secondary
> adapter. This is because redhat-config-xfree86 uses
> ddcprobe to do the configing. ddcprobe uses lrmi
> which
> can't handle a secondary adapter.
>
> The code in vbios.vm86 could probably be merged into
> ddcprobe/lrmi to make it work. Then it would be easy
> to give ddcprobe a reset parameter too.
>
> =====
> Jon Smirl
> jonsmirl@yahoo.com
>
> __________________________________________________
> Do you Yahoo!?
> Yahoo! Mail Plus - Powerful. Affordable. Sign up
> now.
> http://mailplus.yahoo.com
>
=====
Jon Smirl
jonsmirl@yahoo.com
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* NGPT 2.2.0 RELEASED: TOPS LINUXTHREADS AND NPTL IN SCALABILITY AND PERFORMANCE
From: Bill Abt @ 2003-01-10 19:58 UTC (permalink / raw)
To: ibmltc-list, ibm-linux-announce, ibm-linux-dev, ibm-linux-tech,
ltc, pthreads-announce, pthreads-core, pthreads-devel,
pthreads-users
Cc: phil-list, linux-kernel
NGPT - Next Generation POSIX Threading
NGPT Release 2.2.0, released today, 10 January 2003, is the next release
of the "Next Generation"
of Linux pthreads support. This release is fully suitable as a replacement
for LinuxThreads by either
a single user or group or an entire distribution.
In this release, the primary focus was performance. Significant
performance and scalability enhance-
ments have been made to this release making it the fastest and most
scalable POSIX compliant
threads package available on the Linux platform.
In this release, performance and scalability were the key focus of NGPT
developers. Performance and scalability were improved to the point where
NGPT bests both LinuxThreads and the new NPTL threading package in
benchmarks. No changes were made to the kernel patches and thanks to the
NPTL effort, all changes required to run NGPT on the latest 2.5.x kernels
are already included.
Performance and scalability were measured using a benchmark program
developed by Sun Microsystems to "prove" that a 1:1 threading model is
better than the M:N threading model. As can be seen in the benchmark
results NGPT is the performance and scalability leader on both a 2-way and
4-way machine running this benchmark. The benchmark results can be found
on the NGPT website. The benchmark itself can be downloaded from the Sun
Microsystems site.
The NGPT website can be found at
http://www-126.ibm.com/developerworks/opensource/pthreads.
^ permalink raw reply
* Re: clipping
From: Geert Uytterhoeven @ 2003-01-10 19:48 UTC (permalink / raw)
To: James Simmons; +Cc: Antonino Daplas, Linux Frame Buffer Device Development
In-Reply-To: <Pine.LNX.4.44.0301101936110.18287-100000@phoenix.infradead.org>
On Fri, 10 Jan 2003, James Simmons wrote:
> > > I thought about this. Originally I did have this function but removed it.
> > > WHat do you think Geert?
> >
> > Yes, that's OK.
> >
> > But I was most concerned about fb_ops.fb_imageblit(), since clipping impacts
> > fb_image.data as well. IIRC, all (most?) current clipping implementations
> > modify fb_image.{dx,dy,width,height} only, without updating fb_image.data.
>
> Good point. Of course we could ignore pieces of data in that image instead
> of altering the data. Altering the entire data would be expensive.
Actually I thought about modifying the fb_image.data pointer only. But indeed,
for monochrome expansion you may have to modify the data, since pixel
boundaries in a bitmap don't correspond to byte boundaries.
Alternatively, if fb_image would countain sx and sy fields (cfr. fb_copyarea),
we can just alter (a copy of) sx and sy when clipping.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* PrintScreen
From: Jan Willem Stumpel @ 2003-01-10 19:49 UTC (permalink / raw)
To: linux-msdos
Pressing the PrtSc key in dosemu (1.1.4.0) prints the (text)
screen, which is a nice surprise.
However, it seems that in my system PrtSc always prints to the
"lp" printer. I would like it to print to another printer I
defined (with a different lpd filter, using the "PC" character set
to print the box characters correctly).
Specifying a different printer in dosemu.conf works for "normal"
DOS printing (printing from applications and COPYing to LPT1), but
not for PrtSc: the printer always seems to be "lp". Can anyone
confirm this? Is there a fix?
Regards, Jan
^ permalink raw reply
* Re: Linux 2.4.21-pre3-ac3 oops with himem
From: Michael Madore @ 2003-01-10 19:56 UTC (permalink / raw)
To: linux-kernel
> I received the following oops while running the Cerberus stress test
on 2.4.21-pre3-ac3. The hardware is an ASUS A7N8X single AMD Athlon XP
> motherboard with the Nvidia nforce2 chipset. The oops occurs as soon
as the system has used all the RAM and tries to use swap. The total
amount of
> memory on the machine is 1GB, and himem is enabled. If I turn off
himem support the kernel starts to use swap without oopsing. I can
provide my
> kernel .config or more hardware details if that would be useful.
Sorry for a little misinformation. I seem to get the oops with himem
disabled as well. I must have just been lucky the first time.
Mike
^ permalink raw reply
* Re: Re: [PATCH]: image.depth fix to accomodate monochrome cards
From: Geert Uytterhoeven @ 2003-01-10 19:43 UTC (permalink / raw)
To: James Simmons; +Cc: Antonino Daplas, Linux Fbdev development list
In-Reply-To: <Pine.LNX.4.44.0301101925110.18287-100000@phoenix.infradead.org>
On Fri, 10 Jan 2003, James Simmons wrote:
> > I think we still have several corner cases, such as TRUECOLOR with bpp
> > <= 8, I'm not sure if that works.
>
> The matorx millenium has such a mode. So such things do exist.
>
> > - if (image->depth == 1) {
> > + if (image->depth == 0) {
>
> P.S
>
> I'm just not to crazy about the depth equal zero thing. I just pitcure
> developers having a hard time with it.
Monochrome color expansion just works differently: it expands the zeroes and
ones in a bitmap based on fg_color and bg_color, while image drawing draws an
image containing colormap indices to the frame buffer.
Do you have a better suggestion?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* Re: rotation.
From: James Simmons @ 2003-01-10 19:42 UTC (permalink / raw)
To: Antonino Daplas
Cc: Linux Fbdev development list, Linux Kernel Mailing List,
Geert Uytterhoeven
In-Reply-To: <1042171520.933.126.camel@localhost.localdomain>
> > Yes. Hardware rotation shouldn't also not effect the way accel
> > operatations are done.
>
> The main difference is if the hardware supports rotation, fbcon will
> present it with "normal" data. With the generic implementation, fbcon
> will present the driver with rotated data.
>
> So we need a driver capabilities field either in fb_info or
> fb_fix_screeninfo.
We can just test if the rotation hook exist for the fbdev driver. No hook
then use generic code in fbcon. Also we have a angle field in var so we
can see if the user wants the data rotated.
> Not really. We can dynamically rotate the fontdata using the default
> display->fontdata into another buffer. I believe I have functions that
> do that in the patch I submitted. (Sorry, I lost it when one of my
> drives crashed :-(.
I have that patch. It just has to be updated to the latest changes.
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* Re: any chance of 2.6.0-test*?
From: Jeff Garzik @ 2003-01-10 19:51 UTC (permalink / raw)
To: J.A. Magallon; +Cc: linux-kernel
In-Reply-To: <20030110184739.GA1579@werewolf.able.es>
On Fri, Jan 10, 2003 at 07:47:39PM +0100, J.A. Magallon wrote:
> As there is a CONFIG_EXPERIMENTAL, how about a CONFIG_DEPRECATED for the
> opposite edge ?
CONFIG_OBSOLETE already exists for this.
^ permalink raw reply
* LCD scaling type
From: Benjamin Herrenschmidt @ 2003-01-10 19:42 UTC (permalink / raw)
To: Linux Fbdev development list
Hi !
When setting a mode on an LCD display that is not exactly the
native mode of that display, we can, on some chips, setup a
scaler. However, most of the time, we have 2 difference choices
for setting up this scaler: It can preserve or not preserve
the aspect ratio. A typical example is the titnium powerbook's 1152x768
mode. If I set it to 1024x768, I can get either horizontal scaling (not
preserving aspect ratio) or no scaling with black bars on left & right
(preserving aspect ratio).
While in most case you actually want to preserve the aspect ratio, it
would still I beleive make sense to let the user choose it.
Could we define one of the reserved fields in fb_var_screeninfo as
beeing a "flags" field for such things ? There are a couple of other
things that we may want to stuff into such a bitfield later, I'd suggest
reserving one 32 bits field for such flags.
Ben.
--
Benjamin Herrenschmidt <benh@kernel.crashing.org>
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* Re: fb_imageblit()
From: Geert Uytterhoeven @ 2003-01-10 19:41 UTC (permalink / raw)
To: James Simmons; +Cc: Antonino Daplas, Linux Frame Buffer Device Development
In-Reply-To: <Pine.LNX.4.44.0301101857310.18287-100000@phoenix.infradead.org>
On Fri, 10 Jan 2003, James Simmons wrote:
> > Secondly, indexing the cmap instead of the pseudo_palette means that
> > cfb_imageblit has to know the native framebuffer format.
>
> No indexing the cmap. Instead call fb_set_cmap before we call
> xxxfb_imageblit. Personally I think we should call fb_set_cmap always.
>
> > I would rather have everything refer to
> > the pseudopalette, regardless of the visual format. This will be better
> > especially for some of the corner cases, like monochrome cards with
> > bits_per_pixel = 8.
>
> It works pretty good for for any pack pixel type modes. Now for planar
> cards this isn't the case. Ideally struct fb_cmap should have contained
What do you mean? I don't see a problem for planar modes. A pixel is still a
value of size n bits, it's just that the n bits are not located next to each
other, but spread across multiple words. planar_imageblit() will take care of
converting from chunky to planar mode.
BTW, I do have a working amifb now (it's in Linux/m68k CVS), but the
imageblit() needs more optimizations.
> a
>
> unsigned long pixel;
>
> field. Like X does. It does not and changing that would break things :-(
And let the fbdev driver fill in the pixel values, based on the fb_cmap?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* Re: Rage128 as secondary adapter
From: Jon Smirl @ 2003-01-10 19:40 UTC (permalink / raw)
To: James Simmons; +Cc: Stefan Reinauer, fbdev
In-Reply-To: <Pine.LNX.4.44.0301101930030.18287-100000@phoenix.infradead.org>
--- James Simmons <jsimmons@infradead.org> wrote:
> So it is a matter of time before they will release
> this info.
>
If you can get me the info, I will do the work. I own
both Rage and Radeon cards so I can do some testing.
I'll also add DDC support if they'll give me that
info.
I spent last night disassembling their ROMs. The reset
procedure is not too difficult. But I would much
rather do it with support from ATI documentation. It
is easy to misinterpret a disassembly.
Do you have a personal contact there? Maybe they can
be convinced to publicly release documentation for
their older products. I'm sure NVidia doesn't care how
the Rage chip works any more. It would make a good PR
release about ATI being a community citizen. It would
also free their developer relations group from
hassling with open source developers on older cards.
=====
Jon Smirl
jonsmirl@yahoo.com
__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* Re: clipping
From: James Simmons @ 2003-01-10 19:39 UTC (permalink / raw)
To: Geert Uytterhoeven; +Cc: Antonino Daplas, Linux Frame Buffer Device Development
In-Reply-To: <Pine.GSO.4.21.0301092242210.8148-100000@vervain.sonytel.be>
> > I thought about this. Originally I did have this function but removed it.
> > WHat do you think Geert?
>
> Yes, that's OK.
>
> But I was most concerned about fb_ops.fb_imageblit(), since clipping impacts
> fb_image.data as well. IIRC, all (most?) current clipping implementations
> modify fb_image.{dx,dy,width,height} only, without updating fb_image.data.
Good point. Of course we could ignore pieces of data in that image instead
of altering the data. Altering the entire data would be expensive.
> > > The other option (which I don't like) is just to check the passed
> > > fb_var_screeninfo in the put_var ioctl against the current console
> > > window size. But this is not foolproof as we will not be sure of the
> > > resulting window size _after_ the fb_set_var() call.
> >
> > Yuck!!! The other way is better.
>
> Well, in between the calls to fb_ops.fb_check_var() and fb_ops.set_par() you
> can still perform that check. But it's indeed ugly.
Altering to the framebuffer via /dev/fb that would effect the tty should
not remain after the final close of /dev/fb. Instead the console should
reset to its previous state before we first opened /dev/fb.
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* Re: [linux-lvm] pvcreate -- device "/dev/hdc" has a partition table: force check bypass?
From: Donald Gordon @ 2003-01-10 19:39 UTC (permalink / raw)
To: linux-lvm
In-Reply-To: <20030111135159.6f968ae6.don@dis.org.nz>
On Sat, 11 Jan 2003 13:51:59 +1300 Donald Gordon <don@dis.org.nz> wrote:
> Hi
>
> I'm trying to setup LVM, but have run into trouble:
>
> unibus:~# blockdev --rereadpt /dev/hdc;dmesg|tail -n 1
> /dev/ide/host0/bus1/target0/lun0: unknown partition table
> unibus:~# pvcreate /dev/hdc
> pvcreate -- device "/dev/hdc" has a partition table
I solved the problem by mounting devfs (it was compiled into my kernel,
but not used). The wording about devfs in the LVM HOWTO could do with
some clarification :-)
don
^ permalink raw reply
* Re: lifecycle of a packet (OT)
From: Tony Clayton @ 2003-01-10 19:37 UTC (permalink / raw)
To: Anders Fugmann; +Cc: Oskar Andreasson, netfilter
In-Reply-To: <3E1EFA34.3050700@fugmann.dhs.org>
Quoting Anders Fugmann <afu@fugmann.dhs.org>:
> Btw. Thanks for a great tutorial. Keep up the good work.
Yes, that tutorial really helps, thanks Oskar. I think it should be
given some sort of "Official" status on the netfilter web site, and they
should definately link to yours instead of hosting an old version.
Just a few suggestions for the tutorial (take 'em or leave 'em ;):
General:
- it would be useful if the guide referred to the versions of
iptables/kernel for which it it is known to be valid
Traversing of tables and chains section:
- the version on netfilter.org is old, doesn't link to the original, and
has broken links (the rc.test-iptables.txt script, for example)
- might benefit from mentioning that EST/REL packets don't traverse the
NAT chain, and why
- as a newbie to iptables and the kernel network stack, I find it
easiest to think in context of an actual connection that I can test. As
such, it might benefit from using example connections to illustrate,
such as in my original post, ie:
masq client -> firewall
masq client -> external
firewall -> external
firewall -> firewall (thanks Joel Newkirk!)
Thanks Oskar, Joel, and Anders!
^ permalink raw reply
* MTP/AV / Sequencer MIDI problem... design issue?
From: Ryan Pavlik @ 2003-01-10 19:37 UTC (permalink / raw)
To: alsa-devel
Basically, the problem is this. The MTP/AV protocol takes messages
like this:
Dn B1 ... Bn
Where Dn is the device number, and B1..Bn are the midi message bytes.
This, at least, is what I gather from talking to Michael Mayers, the
original driver developer.
You may see the problem now. When multiple threads talk to the device
at once, you have a problem:
A: Dn B1 ,, ,, B2 ...
B: Dn B1 ,, ...
The userland solution, when writing raw midi, is to just put a mutex
on the device and never write an incomplete message.
That is, of course, not an acceptable solution, and it also doesn't
work when you're using the ALSA sequencer interface (at least from the
API calls I've seen). Fixing it in the driver requires interpreting
much MIDI, possibly buffering, and has some problems (what if someone
writes an incomplete message and dies?).
I'd like to hear recommendations; I have a particular interest in
seeing this work and am more than willing to submit patches.
--
Ryan Pavlik <rpav@users.sf.net>
"Hey! Captain talks-too-much, quiet time is now."
-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
^ permalink raw reply
* Linux 2.4.21-pre3-ac3 oops with himem
From: Michael Madore @ 2003-01-10 19:45 UTC (permalink / raw)
To: linux-kernel
I received the following oops while running the Cerberus stress test on
2.4.21-pre3-ac3. The hardware is an ASUS A7N8X single AMD Athlon XP
motherboard with the Nvidia nforce2 chipset. The oops occurs as soon as
the system has used all the RAM and tries to use swap. The total amount
of memory on the machine is 1GB, and himem is enabled. If I turn off
himem support the kernel starts to use swap without oopsing. I can
provide my kernel .config or more hardware details if that would be useful.
Mike
ksymoops 2.4.4 on i686 2.4.21-pre3-ac2. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.4.21-pre3-ac2/ (default)
-m /boot/System.map-2.4.21-pre3-ac2 (default)
Warning: You did not tell me where to find symbol information. I will
assume that the log matches the kernel and modules that are running
right now and I'll use the default options above for symbol resolution.
If the current kernel and/or modules do not match the log, you can get
more accurate output by telling me the kernel version and where to find
map, modules, ksyms etc. ksymoops -h explains the options.
Unable to handle kernel NULL pointer dereference at virtual address 00000004
c01354e2
*pde = 00000000
Oops: 0002
CPU: 0
EIP: 0010:[<c01354e2>] Not tainted
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010246
eax: 00000000 ebx: c197d960 ecx: f71da000 edx: f71da05c
esi: c197d960 edi: 00000000 ebp: 00003737 esp: f71dbdd0
ds: 0018 es: 0018 ss: 0018
Process cp (pid: 1690, stackpage=f71db000)
Stack: c01415f2 f7e84400 c197d960 000001d2 c013f67f 00000000 c197d960
00000000
c197d960 00000020 00003737 c0134ad7 00000004 f71da000 00000200
000001d2
c02fabe8 f71da000 00000000 00000000 00000000 00000020 000001d2
00000006
Call Trace: [<c01415f2>] [<c013f67f>] [<c0134ad7>] [<c0134c70>]
[<c0134cec>]
[<c01357d0>] [<c0135a8b>] [<c012d216>] [<c012d8f5>] [<c012dc5f>]
[<c0150a9c>]
[<c012e14a>] [<c012dfe0>] [<c013cf65>] [<c0108b33>]
Code: 89 58 04 89 03 89 53 04 89 59 5c 89 7b 0c ff 41 68 83 c4 1c
>>EIP; c01354e2 <__free_pages_ok+282/2a0> <=====
Trace; c01415f2 <try_to_free_buffers+d2/160>
Trace; c013f67f <try_to_release_page+2f/50>
Trace; c0134ad7 <shrink_cache+387/3b0>
Trace; c0134c70 <shrink_caches+50/90>
Trace; c0134cec <try_to_free_pages_zone+3c/60>
Trace; c01357d0 <balance_classzone+60/200>
Trace; c0135a8b <__alloc_pages+11b/170>
Trace; c012d216 <page_cache_read+76/d0>
Trace; c012d8f5 <generic_file_readahead+f5/130>
Trace; c012dc5f <do_generic_file_read+2ef/460>
Trace; c0150a9c <dput+1c/160>
Trace; c012e14a <generic_file_read+7a/110>
Trace; c012dfe0 <file_read_actor+0/f0>
Trace; c013cf65 <sys_read+95/110>
Trace; c0108b33 <system_call+33/38>
Code; c01354e2 <__free_pages_ok+282/2a0>
00000000 <_EIP>:
Code; c01354e2 <__free_pages_ok+282/2a0> <=====
0: 89 58 04 mov %ebx,0x4(%eax) <=====
Code; c01354e5 <__free_pages_ok+285/2a0>
3: 89 03 mov %eax,(%ebx)
Code; c01354e7 <__free_pages_ok+287/2a0>
5: 89 53 04 mov %edx,0x4(%ebx)
Code; c01354ea <__free_pages_ok+28a/2a0>
8: 89 59 5c mov %ebx,0x5c(%ecx)
Code; c01354ed <__free_pages_ok+28d/2a0>
b: 89 7b 0c mov %edi,0xc(%ebx)
Code; c01354f0 <__free_pages_ok+290/2a0>
e: ff 41 68 incl 0x68(%ecx)
Code; c01354f3 <__free_pages_ok+293/2a0>
11: 83 c4 1c add $0x1c,%esp
1 warning issued. Results may not be reliable.
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.