Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Functions | Variables
dasd_int.h File Reference
#include <linux/module.h>
#include <linux/wait.h>
#include <linux/blkdev.h>
#include <linux/genhd.h>
#include <linux/hdreg.h>
#include <linux/interrupt.h>
#include <linux/log2.h>
#include <asm/ccwdev.h>
#include <linux/workqueue.h>
#include <asm/debug.h>
#include <asm/dasd.h>
#include <asm/idals.h>

Go to the source code of this file.

Data Structures

struct  dasd_ccw_req
 
struct  dasd_uid
 
struct  dasd_discipline
 
struct  dasd_path
 
struct  dasd_profile_info
 
struct  dasd_profile
 
struct  dasd_device
 
struct  dasd_block
 
struct  dasd_mchunk
 

Macros

#define DASD_PER_MAJOR   (1U << (MINORBITS - DASD_PARTN_BITS))
 
#define DASD_PARTN_MASK   ((1 << DASD_PARTN_BITS) - 1)
 
#define DASD_STATE_NEW   0
 
#define DASD_STATE_KNOWN   1
 
#define DASD_STATE_BASIC   2
 
#define DASD_STATE_UNFMT   3
 
#define DASD_STATE_READY   4
 
#define DASD_STATE_ONLINE   5
 
#define DASD_ECKD_MAGIC   0xC5C3D2C4
 
#define DASD_DIAG_MAGIC   0xC4C9C1C7
 
#define DASD_FBA_MAGIC   0xC6C2C140
 
#define DASD_SENSE_BIT_0   0x80
 
#define DASD_SENSE_BIT_1   0x40
 
#define DASD_SENSE_BIT_2   0x20
 
#define DASD_SENSE_BIT_3   0x10
 
#define DASD_SIM_SENSE   0x0F
 
#define DASD_SIM_MSG_TO_OP   0x03
 
#define DASD_SIM_LOG   0x0C
 
#define CDEV_NESTED_FIRST   1
 
#define CDEV_NESTED_SECOND   2
 
#define DBF_DEV_EVENT(d_level, d_device, d_str, d_data...)
 
#define DBF_DEV_EXC(d_level, d_device, d_str, d_data...)
 
#define DBF_EVENT(d_level, d_str, d_data...)
 
#define DBF_EVENT_DEVID(d_level, d_cdev, d_str, d_data...)
 
#define DBF_EXC(d_level, d_str, d_data...)
 
#define ERRORLENGTH   30
 
#define DBF_EMERG   0 /* system is unusable */
 
#define DBF_ALERT   1 /* action must be taken immediately */
 
#define DBF_CRIT   2 /* critical conditions */
 
#define DBF_ERR   3 /* error conditions */
 
#define DBF_WARNING   4 /* warning conditions */
 
#define DBF_NOTICE   5 /* normal but significant condition */
 
#define DBF_INFO   6 /* informational */
 
#define DBF_DEBUG   6 /* debug-level messages */
 
#define DEV_MESSAGE(d_loglevel, d_device, d_string, d_args...)
 
#define MESSAGE(d_loglevel, d_string, d_args...)
 
#define DEV_MESSAGE_LOG(d_loglevel, d_device, d_string, d_args...)
 
#define MESSAGE_LOG(d_loglevel, d_string, d_args...)
 
#define DASD_CQR_FILLED   0x00 /* request is ready to be processed */
 
#define DASD_CQR_DONE   0x01 /* request is completed successfully */
 
#define DASD_CQR_NEED_ERP   0x02 /* request needs recovery action */
 
#define DASD_CQR_IN_ERP   0x03 /* request is in recovery */
 
#define DASD_CQR_FAILED   0x04 /* request is finally failed */
 
#define DASD_CQR_TERMINATED   0x05 /* request was stopped by driver */
 
#define DASD_CQR_QUEUED   0x80 /* request is queued to be processed */
 
#define DASD_CQR_IN_IO   0x81 /* request is currently in IO */
 
#define DASD_CQR_ERROR   0x82 /* request is completed with error */
 
#define DASD_CQR_CLEAR_PENDING   0x83 /* request is clear pending */
 
#define DASD_CQR_CLEARED   0x84 /* request was cleared */
 
#define DASD_CQR_SUCCESS   0x85 /* request was successful */
 
#define DASD_EXPIRES   300
 
#define DASD_EXPIRES_MAX   40000000
 
#define DASD_CQR_FLAGS_USE_ERP   0 /* use ERP for this request */
 
#define DASD_CQR_FLAGS_FAILFAST   1 /* FAILFAST */
 
#define DASD_CQR_VERIFY_PATH   2 /* path verification request */
 
#define DASD_CQR_ALLOW_SLOCK
 
#define UA_NOT_CONFIGURED   0x00
 
#define UA_BASE_DEVICE   0x01
 
#define UA_BASE_PAV_ALIAS   0x02
 
#define UA_HYPER_PAV_ALIAS   0x03
 
#define DASD_EER_DISABLE   0
 
#define DASD_EER_TRIGGER   1
 
#define DASD_EER_FATALERROR   1
 
#define DASD_EER_NOPATH   2
 
#define DASD_EER_STATECHANGE   3
 
#define DASD_EER_PPRCSUSPEND   4
 
#define DASD_STOPPED_NOT_ACC   1 /* not accessible */
 
#define DASD_STOPPED_QUIESCE   2 /* Quiesced */
 
#define DASD_STOPPED_PENDING   4 /* long busy */
 
#define DASD_STOPPED_DC_WAIT   8 /* disconnected, wait */
 
#define DASD_STOPPED_SU   16 /* summary unit check handling */
 
#define DASD_STOPPED_PM   32 /* pm state transition */
 
#define DASD_UNRESUMED_PM   64 /* pm resume failed state */
 
#define DASD_FLAG_OFFLINE   3 /* device is in offline processing */
 
#define DASD_FLAG_EER_SNSS   4 /* A SNSS is required */
 
#define DASD_FLAG_EER_IN_USE   5 /* A SNSS request is running */
 
#define DASD_FLAG_DEVICE_RO
 
#define DASD_FLAG_IS_RESERVED   7 /* The device is reserved */
 
#define DASD_FLAG_LOCK_STOLEN   8 /* The device lock was stolen */
 
#define DASD_FLAG_SUSPENDED   9 /* The device was suspended */
 
#define DASD_PROFILE_OFF   0
 
#define DASD_PROFILE_ON   1
 
#define DASD_PROFILE_GLOBAL_ONLY   2
 
#define dasd_eer_init()   (0)
 
#define dasd_eer_exit()   do { } while (0)
 
#define dasd_eer_enable(d)   (0)
 
#define dasd_eer_disable(d)   do { } while (0)
 
#define dasd_eer_write(d, c, i)   do { } while (0)
 
#define dasd_eer_snss(d)   do { } while (0)
 
#define dasd_eer_enabled(d)   (0)
 

Typedefs

typedef struct dasd_ccw_req *(* dasd_erp_fn_t )(struct dasd_ccw_req *)
 

Functions

void dasd_put_device_wake (struct dasd_device *)
 
struct dasd_mchunk __attribute__ ((aligned(8)))
 Packet vector entry.
 
struct dasd_ccw_reqdasd_kmalloc_request (int, int, int, struct dasd_device *)
 
struct dasd_ccw_reqdasd_smalloc_request (int, int, int, struct dasd_device *)
 
void dasd_kfree_request (struct dasd_ccw_req *, struct dasd_device *)
 
void dasd_sfree_request (struct dasd_ccw_req *, struct dasd_device *)
 
void dasd_wakeup_cb (struct dasd_ccw_req *, void *)
 
struct dasd_devicedasd_alloc_device (void)
 
void dasd_free_device (struct dasd_device *)
 
struct dasd_blockdasd_alloc_block (void)
 
void dasd_free_block (struct dasd_block *)
 
void dasd_enable_device (struct dasd_device *)
 
void dasd_set_target_state (struct dasd_device *, int)
 
void dasd_kick_device (struct dasd_device *)
 
void dasd_restore_device (struct dasd_device *)
 
void dasd_reload_device (struct dasd_device *)
 
void dasd_add_request_head (struct dasd_ccw_req *)
 
void dasd_add_request_tail (struct dasd_ccw_req *)
 
int dasd_start_IO (struct dasd_ccw_req *)
 
int dasd_term_IO (struct dasd_ccw_req *)
 
void dasd_schedule_device_bh (struct dasd_device *)
 
void dasd_schedule_block_bh (struct dasd_block *)
 
int dasd_sleep_on (struct dasd_ccw_req *)
 
int dasd_sleep_on_immediatly (struct dasd_ccw_req *)
 
int dasd_sleep_on_interruptible (struct dasd_ccw_req *)
 
void dasd_device_set_timer (struct dasd_device *, int)
 
void dasd_device_clear_timer (struct dasd_device *)
 
void dasd_block_set_timer (struct dasd_block *, int)
 
void dasd_block_clear_timer (struct dasd_block *)
 
int dasd_cancel_req (struct dasd_ccw_req *)
 
int dasd_flush_device_queue (struct dasd_device *)
 
int dasd_generic_probe (struct ccw_device *, struct dasd_discipline *)
 
void dasd_generic_remove (struct ccw_device *cdev)
 
int dasd_generic_set_online (struct ccw_device *, struct dasd_discipline *)
 
int dasd_generic_set_offline (struct ccw_device *cdev)
 
int dasd_generic_notify (struct ccw_device *, int)
 
int dasd_generic_last_path_gone (struct dasd_device *)
 
int dasd_generic_path_operational (struct dasd_device *)
 
void dasd_generic_shutdown (struct ccw_device *)
 
void dasd_generic_handle_state_change (struct dasd_device *)
 
int dasd_generic_pm_freeze (struct ccw_device *)
 
int dasd_generic_restore_device (struct ccw_device *)
 
enum uc_todo dasd_generic_uc_handler (struct ccw_device *, struct irb *)
 
void dasd_generic_path_event (struct ccw_device *, int *)
 
int dasd_generic_verify_path (struct dasd_device *, __u8)
 
int dasd_generic_read_dev_chars (struct dasd_device *, int, void *, int)
 
chardasd_get_sense (struct irb *)
 
void dasd_device_set_stop_bits (struct dasd_device *, int)
 
void dasd_device_remove_stop_bits (struct dasd_device *, int)
 
int dasd_device_is_ro (struct dasd_device *)
 
void dasd_profile_reset (struct dasd_profile *)
 
int dasd_profile_on (struct dasd_profile *)
 
void dasd_profile_off (struct dasd_profile *)
 
void dasd_global_profile_reset (void)
 
chardasd_get_user_string (const char __user *, size_t)
 
int dasd_devmap_init (void)
 
void dasd_devmap_exit (void)
 
struct dasd_devicedasd_create_device (struct ccw_device *)
 
void dasd_delete_device (struct dasd_device *)
 
int dasd_get_feature (struct ccw_device *, int)
 
int dasd_set_feature (struct ccw_device *, int, int)
 
int dasd_add_sysfs_files (struct ccw_device *)
 
void dasd_remove_sysfs_files (struct ccw_device *)
 
struct dasd_devicedasd_device_from_cdev (struct ccw_device *)
 
struct dasd_devicedasd_device_from_cdev_locked (struct ccw_device *)
 
struct dasd_devicedasd_device_from_devindex (int)
 
void dasd_add_link_to_gendisk (struct gendisk *, struct dasd_device *)
 
struct dasd_devicedasd_device_from_gendisk (struct gendisk *)
 
int dasd_parse (void)
 
int dasd_busid_known (const char *)
 
int dasd_gendisk_init (void)
 
void dasd_gendisk_exit (void)
 
int dasd_gendisk_alloc (struct dasd_block *)
 
void dasd_gendisk_free (struct dasd_block *)
 
int dasd_scan_partitions (struct dasd_block *)
 
void dasd_destroy_partitions (struct dasd_block *)
 
int dasd_ioctl (struct block_device *, fmode_t, unsigned int, unsigned long)
 
int dasd_proc_init (void)
 
void dasd_proc_exit (void)
 
struct dasd_ccw_reqdasd_default_erp_action (struct dasd_ccw_req *)
 
struct dasd_ccw_reqdasd_default_erp_postaction (struct dasd_ccw_req *)
 
struct dasd_ccw_reqdasd_alloc_erp_request (char *, int, int, struct dasd_device *)
 
void dasd_free_erp_request (struct dasd_ccw_req *, struct dasd_device *)
 
void dasd_log_sense (struct dasd_ccw_req *, struct irb *)
 
void dasd_log_sense_dbf (struct dasd_ccw_req *cqr, struct irb *irb)
 
struct dasd_ccw_reqdasd_3990_erp_action (struct dasd_ccw_req *)
 
void dasd_3990_erp_handle_sim (struct dasd_device *, char *)
 

Variables

struct dasd_ccw_req __attribute__
 
struct dasd_disciplinedasd_diag_discipline_pointer
 
struct list_head list
 
unsigned long size
 
debug_info_tdasd_debug_area
 
struct dasd_profile_info dasd_global_profile_data
 
unsigned int dasd_global_profile_level
 
struct block_device_operations dasd_device_operations
 
struct kmem_cachedasd_page_cache
 
int dasd_max_devindex
 
int dasd_probeonly
 
int dasd_autodetect
 
int dasd_nopav
 
int dasd_nofcx
 

Macro Definition Documentation

#define CDEV_NESTED_FIRST   1

Definition at line 82 of file dasd_int.h.

#define CDEV_NESTED_SECOND   2

Definition at line 83 of file dasd_int.h.

#define DASD_CQR_ALLOW_SLOCK
Value:
3 /* Try this request even when lock was
* stolen. Should not be combined with
* DASD_CQR_FLAGS_USE_ERP
*/

Definition at line 232 of file dasd_int.h.

#define DASD_CQR_CLEAR_PENDING   0x83 /* request is clear pending */

Definition at line 220 of file dasd_int.h.

#define DASD_CQR_CLEARED   0x84 /* request was cleared */

Definition at line 221 of file dasd_int.h.

#define DASD_CQR_DONE   0x01 /* request is completed successfully */

Definition at line 211 of file dasd_int.h.

#define DASD_CQR_ERROR   0x82 /* request is completed with error */

Definition at line 219 of file dasd_int.h.

#define DASD_CQR_FAILED   0x04 /* request is finally failed */

Definition at line 214 of file dasd_int.h.

#define DASD_CQR_FILLED   0x00 /* request is ready to be processed */

Definition at line 210 of file dasd_int.h.

#define DASD_CQR_FLAGS_FAILFAST   1 /* FAILFAST */

Definition at line 230 of file dasd_int.h.

#define DASD_CQR_FLAGS_USE_ERP   0 /* use ERP for this request */

Definition at line 229 of file dasd_int.h.

#define DASD_CQR_IN_ERP   0x03 /* request is in recovery */

Definition at line 213 of file dasd_int.h.

#define DASD_CQR_IN_IO   0x81 /* request is currently in IO */

Definition at line 218 of file dasd_int.h.

#define DASD_CQR_NEED_ERP   0x02 /* request needs recovery action */

Definition at line 212 of file dasd_int.h.

#define DASD_CQR_QUEUED   0x80 /* request is queued to be processed */

Definition at line 217 of file dasd_int.h.

#define DASD_CQR_SUCCESS   0x85 /* request was successful */

Definition at line 222 of file dasd_int.h.

#define DASD_CQR_TERMINATED   0x05 /* request was stopped by driver */

Definition at line 215 of file dasd_int.h.

#define DASD_CQR_VERIFY_PATH   2 /* path verification request */

Definition at line 231 of file dasd_int.h.

#define DASD_DIAG_MAGIC   0xC4C9C1C7

Definition at line 61 of file dasd_int.h.

#define DASD_ECKD_MAGIC   0xC5C3D2C4

Definition at line 60 of file dasd_int.h.

#define DASD_EER_DISABLE   0

Definition at line 364 of file dasd_int.h.

#define dasd_eer_disable (   d)    do { } while (0)

Definition at line 780 of file dasd_int.h.

#define dasd_eer_enable (   d)    (0)

Definition at line 779 of file dasd_int.h.

#define dasd_eer_enabled (   d)    (0)

Definition at line 783 of file dasd_int.h.

#define dasd_eer_exit (   void)    do { } while (0)

Definition at line 778 of file dasd_int.h.

#define DASD_EER_FATALERROR   1

Definition at line 368 of file dasd_int.h.

#define dasd_eer_init (   void)    (0)

Definition at line 777 of file dasd_int.h.

#define DASD_EER_NOPATH   2

Definition at line 369 of file dasd_int.h.

#define DASD_EER_PPRCSUSPEND   4

Definition at line 371 of file dasd_int.h.

#define dasd_eer_snss (   d)    do { } while (0)

Definition at line 782 of file dasd_int.h.

#define DASD_EER_STATECHANGE   3

Definition at line 370 of file dasd_int.h.

#define DASD_EER_TRIGGER   1

Definition at line 365 of file dasd_int.h.

#define dasd_eer_write (   d,
  c,
  i 
)    do { } while (0)

Definition at line 781 of file dasd_int.h.

#define DASD_EXPIRES   300

Definition at line 225 of file dasd_int.h.

#define DASD_EXPIRES_MAX   40000000

Definition at line 226 of file dasd_int.h.

#define DASD_FBA_MAGIC   0xC6C2C140

Definition at line 62 of file dasd_int.h.

#define DASD_FLAG_DEVICE_RO
Value:
6 /* The device itself is read-only. Don't
* confuse this with the user specified
* read-only feature.
*/

Definition at line 509 of file dasd_int.h.

#define DASD_FLAG_EER_IN_USE   5 /* A SNSS request is running */

Definition at line 508 of file dasd_int.h.

#define DASD_FLAG_EER_SNSS   4 /* A SNSS is required */

Definition at line 507 of file dasd_int.h.

#define DASD_FLAG_IS_RESERVED   7 /* The device is reserved */

Definition at line 510 of file dasd_int.h.

#define DASD_FLAG_LOCK_STOLEN   8 /* The device lock was stolen */

Definition at line 511 of file dasd_int.h.

#define DASD_FLAG_OFFLINE   3 /* device is in offline processing */

Definition at line 506 of file dasd_int.h.

#define DASD_FLAG_SUSPENDED   9 /* The device was suspended */

Definition at line 512 of file dasd_int.h.

#define DASD_PARTN_MASK   ((1 << DASD_PARTN_BITS) - 1)

Definition at line 14 of file dasd_int.h.

#define DASD_PER_MAJOR   (1U << (MINORBITS - DASD_PARTN_BITS))

Definition at line 13 of file dasd_int.h.

#define DASD_PROFILE_GLOBAL_ONLY   2

Definition at line 625 of file dasd_int.h.

#define DASD_PROFILE_OFF   0

Definition at line 623 of file dasd_int.h.

#define DASD_PROFILE_ON   1

Definition at line 624 of file dasd_int.h.

#define DASD_SENSE_BIT_0   0x80

Definition at line 71 of file dasd_int.h.

#define DASD_SENSE_BIT_1   0x40

Definition at line 72 of file dasd_int.h.

#define DASD_SENSE_BIT_2   0x20

Definition at line 73 of file dasd_int.h.

#define DASD_SENSE_BIT_3   0x10

Definition at line 74 of file dasd_int.h.

#define DASD_SIM_LOG   0x0C

Definition at line 79 of file dasd_int.h.

#define DASD_SIM_MSG_TO_OP   0x03

Definition at line 78 of file dasd_int.h.

#define DASD_SIM_SENSE   0x0F

Definition at line 77 of file dasd_int.h.

#define DASD_STATE_BASIC   2

Definition at line 41 of file dasd_int.h.

#define DASD_STATE_KNOWN   1

Definition at line 40 of file dasd_int.h.

#define DASD_STATE_NEW   0

Definition at line 39 of file dasd_int.h.

#define DASD_STATE_ONLINE   5

Definition at line 44 of file dasd_int.h.

#define DASD_STATE_READY   4

Definition at line 43 of file dasd_int.h.

#define DASD_STATE_UNFMT   3

Definition at line 42 of file dasd_int.h.

#define DASD_STOPPED_DC_WAIT   8 /* disconnected, wait */

Definition at line 500 of file dasd_int.h.

#define DASD_STOPPED_NOT_ACC   1 /* not accessible */

Definition at line 497 of file dasd_int.h.

#define DASD_STOPPED_PENDING   4 /* long busy */

Definition at line 499 of file dasd_int.h.

#define DASD_STOPPED_PM   32 /* pm state transition */

Definition at line 502 of file dasd_int.h.

#define DASD_STOPPED_QUIESCE   2 /* Quiesced */

Definition at line 498 of file dasd_int.h.

#define DASD_STOPPED_SU   16 /* summary unit check handling */

Definition at line 501 of file dasd_int.h.

#define DASD_UNRESUMED_PM   64 /* pm resume failed state */

Definition at line 503 of file dasd_int.h.

#define DBF_ALERT   1 /* action must be taken immediately */

Definition at line 135 of file dasd_int.h.

#define DBF_CRIT   2 /* critical conditions */

Definition at line 136 of file dasd_int.h.

#define DBF_DEBUG   6 /* debug-level messages */

Definition at line 141 of file dasd_int.h.

#define DBF_DEV_EVENT (   d_level,
  d_device,
  d_str,
  d_data... 
)
Value:
do { \
debug_sprintf_event(d_device->debug_area, \
d_str "\n", \
d_data); \
} while(0)

Definition at line 88 of file dasd_int.h.

#define DBF_DEV_EXC (   d_level,
  d_device,
  d_str,
  d_data... 
)
Value:
do { \
debug_sprintf_exception(d_device->debug_area, \
d_str "\n", \
d_data); \
} while(0)

Definition at line 96 of file dasd_int.h.

#define DBF_EMERG   0 /* system is unusable */

Definition at line 134 of file dasd_int.h.

#define DBF_ERR   3 /* error conditions */

Definition at line 137 of file dasd_int.h.

#define DBF_EVENT (   d_level,
  d_str,
  d_data... 
)
Value:
do { \
debug_sprintf_event(dasd_debug_area, \
d_str "\n", \
d_data); \
} while(0)

Definition at line 104 of file dasd_int.h.

#define DBF_EVENT_DEVID (   d_level,
  d_cdev,
  d_str,
  d_data... 
)
Value:
do { \
struct ccw_dev_id __dev_id; \
ccw_device_get_id(d_cdev, &__dev_id); \
debug_sprintf_event(dasd_debug_area, \
"0.%x.%04x " d_str "\n", \
__dev_id.ssid, __dev_id.devno, d_data); \
} while (0)

Definition at line 112 of file dasd_int.h.

#define DBF_EXC (   d_level,
  d_str,
  d_data... 
)
Value:
do { \
debug_sprintf_exception(dasd_debug_area, \
d_str "\n", \
d_data); \
} while(0)

Definition at line 122 of file dasd_int.h.

#define DBF_INFO   6 /* informational */

Definition at line 140 of file dasd_int.h.

#define DBF_NOTICE   5 /* normal but significant condition */

Definition at line 139 of file dasd_int.h.

#define DBF_WARNING   4 /* warning conditions */

Definition at line 138 of file dasd_int.h.

#define DEV_MESSAGE (   d_loglevel,
  d_device,
  d_string,
  d_args... 
)
Value:
do { \
printk(d_loglevel PRINTK_HEADER " %s: " d_string "\n", \
dev_name(&d_device->cdev->dev), d_args); \
DBF_DEV_EVENT(DBF_ALERT, d_device, d_string, d_args); \
} while(0)

Definition at line 144 of file dasd_int.h.

#define DEV_MESSAGE_LOG (   d_loglevel,
  d_device,
  d_string,
  d_args... 
)
Value:
do { \
printk(d_loglevel PRINTK_HEADER " %s: " d_string "\n", \
dev_name(&d_device->cdev->dev), d_args); \
} while(0)

Definition at line 158 of file dasd_int.h.

#define ERRORLENGTH   30

Definition at line 131 of file dasd_int.h.

#define MESSAGE (   d_loglevel,
  d_string,
  d_args... 
)
Value:
do { \
printk(d_loglevel PRINTK_HEADER " " d_string "\n", d_args); \
DBF_EVENT(DBF_ALERT, d_string, d_args); \
} while(0)

Definition at line 151 of file dasd_int.h.

#define MESSAGE_LOG (   d_loglevel,
  d_string,
  d_args... 
)
Value:
do { \
printk(d_loglevel PRINTK_HEADER " " d_string "\n", d_args); \
} while(0)

Definition at line 164 of file dasd_int.h.

#define UA_BASE_DEVICE   0x01

Definition at line 241 of file dasd_int.h.

#define UA_BASE_PAV_ALIAS   0x02

Definition at line 242 of file dasd_int.h.

#define UA_HYPER_PAV_ALIAS   0x03

Definition at line 243 of file dasd_int.h.

#define UA_NOT_CONFIGURED   0x00

Definition at line 240 of file dasd_int.h.

Typedef Documentation

typedef struct dasd_ccw_req*(* dasd_erp_fn_t)(struct dasd_ccw_req *)
read

Definition at line 235 of file dasd_int.h.

Function Documentation

Packet vector entry.

This data structure is used with netio_send_packet_vector() to send multiple packets with one NetIO call. The structure should be initialized by calling netio_pkt_vector_set(), rather than by setting the fields directly.

This structure is guaranteed to be a power of two in size, no bigger than one L2 cache line, and to be aligned modulo its size.

Reserved for use by the user application. When initialized with the netio_set_pkt_vector_entry() function, this field is guaranteed to be visible to readers only after all other fields are already visible. This way it can be used as a valid flag or generation counter.

Low 8 bits of the packet address to send. The high bits are acquired from the 'handle' field.

Number of bytes to transmit.

The raw handle from a netio_pkt_t. If this is NETIO_PKT_HANDLE_NONE, this vector entry will be skipped and no packet will be transmitted.

Definition at line 9 of file extable.c.

struct dasd_ccw_req* dasd_3990_erp_action ( struct dasd_ccw_req )
read

Definition at line 2699 of file dasd_3990_erp.c.

void dasd_3990_erp_handle_sim ( struct dasd_device ,
char  
)

Definition at line 2066 of file dasd_3990_erp.c.

void dasd_add_link_to_gendisk ( struct gendisk *  ,
struct dasd_device  
)

Definition at line 676 of file dasd_devmap.c.

void dasd_add_request_head ( struct dasd_ccw_req )

Definition at line 2032 of file dasd.c.

void dasd_add_request_tail ( struct dasd_ccw_req )

Definition at line 2050 of file dasd.c.

int dasd_add_sysfs_files ( struct ccw_device )

Definition at line 1371 of file dasd_devmap.c.

struct dasd_block* dasd_alloc_block ( void  )
read

Definition at line 146 of file dasd.c.

struct dasd_device* dasd_alloc_device ( void  )
read

Definition at line 89 of file dasd.c.

struct dasd_ccw_req* dasd_alloc_erp_request ( char ,
int  ,
int  ,
struct dasd_device  
)
read

Definition at line 26 of file dasd_erp.c.

void dasd_block_clear_timer ( struct dasd_block )

Definition at line 2374 of file dasd.c.

void dasd_block_set_timer ( struct dasd_block ,
int   
)

Definition at line 2363 of file dasd.c.

int dasd_busid_known ( const char )

Definition at line 466 of file dasd_devmap.c.

int dasd_cancel_req ( struct dasd_ccw_req )

Definition at line 2305 of file dasd.c.

struct dasd_device* dasd_create_device ( struct ccw_device )
read

Definition at line 540 of file dasd_devmap.c.

struct dasd_ccw_req* dasd_default_erp_action ( struct dasd_ccw_req )
read

Definition at line 87 of file dasd_erp.c.

struct dasd_ccw_req* dasd_default_erp_postaction ( struct dasd_ccw_req )
read

Definition at line 124 of file dasd_erp.c.

void dasd_delete_device ( struct dasd_device )

Definition at line 591 of file dasd_devmap.c.

void dasd_destroy_partitions ( struct dasd_block )

Definition at line 130 of file dasd_genhd.c.

void dasd_device_clear_timer ( struct dasd_device )

Definition at line 1531 of file dasd.c.

struct dasd_device* dasd_device_from_cdev ( struct ccw_device )
read

Definition at line 665 of file dasd_devmap.c.

struct dasd_device* dasd_device_from_cdev_locked ( struct ccw_device )
read

Definition at line 651 of file dasd_devmap.c.

struct dasd_device* dasd_device_from_devindex ( int  )
read

Definition at line 496 of file dasd_devmap.c.

struct dasd_device* dasd_device_from_gendisk ( struct gendisk *  )
read

Definition at line 688 of file dasd_devmap.c.

int dasd_device_is_ro ( struct dasd_device )

Definition at line 2953 of file dasd.c.

void dasd_device_remove_stop_bits ( struct dasd_device ,
int   
)

Definition at line 2020 of file dasd.c.

void dasd_device_set_stop_bits ( struct dasd_device ,
int   
)

Definition at line 2014 of file dasd.c.

void dasd_device_set_timer ( struct dasd_device ,
int   
)

Definition at line 1520 of file dasd.c.

void dasd_devmap_exit ( void  )

Definition at line 1396 of file dasd_devmap.c.

int dasd_devmap_init ( void  )

Definition at line 1384 of file dasd_devmap.c.

void dasd_enable_device ( struct dasd_device )

Definition at line 635 of file dasd.c.

int dasd_flush_device_queue ( struct dasd_device )

Definition at line 1925 of file dasd.c.

void dasd_free_block ( struct dasd_block )

Definition at line 174 of file dasd.c.

void dasd_free_device ( struct dasd_device )

Definition at line 135 of file dasd.c.

void dasd_free_erp_request ( struct dasd_ccw_req ,
struct dasd_device  
)

Definition at line 72 of file dasd_erp.c.

int dasd_gendisk_alloc ( struct dasd_block )

Definition at line 29 of file dasd_genhd.c.

void dasd_gendisk_exit ( void  )

Definition at line 176 of file dasd_genhd.c.

void dasd_gendisk_free ( struct dasd_block )

Definition at line 86 of file dasd_genhd.c.

int dasd_gendisk_init ( void  )

Definition at line 162 of file dasd_genhd.c.

void dasd_generic_handle_state_change ( struct dasd_device )

Definition at line 1577 of file dasd.c.

int dasd_generic_last_path_gone ( struct dasd_device )

Definition at line 3175 of file dasd.c.

int dasd_generic_notify ( struct ccw_device ,
int   
)

Definition at line 3219 of file dasd.c.

void dasd_generic_path_event ( struct ccw_device ,
int  
)

Definition at line 3247 of file dasd.c.

int dasd_generic_path_operational ( struct dasd_device )

Definition at line 3201 of file dasd.c.

int dasd_generic_pm_freeze ( struct ccw_device )

Definition at line 3306 of file dasd.c.

int dasd_generic_probe ( struct ccw_device ,
struct dasd_discipline  
)

Definition at line 2991 of file dasd.c.

int dasd_generic_read_dev_chars ( struct dasd_device ,
int  ,
void ,
int   
)

Definition at line 3441 of file dasd.c.

void dasd_generic_remove ( struct ccw_device cdev)

Definition at line 3020 of file dasd.c.

int dasd_generic_restore_device ( struct ccw_device )

Definition at line 3363 of file dasd.c.

int dasd_generic_set_offline ( struct ccw_device cdev)

Definition at line 3125 of file dasd.c.

int dasd_generic_set_online ( struct ccw_device ,
struct dasd_discipline  
)

Definition at line 3058 of file dasd.c.

void dasd_generic_shutdown ( struct ccw_device )

Definition at line 3501 of file dasd.c.

enum uc_todo dasd_generic_uc_handler ( struct ccw_device ,
struct irb  
)

Definition at line 1709 of file dasd.c.

int dasd_generic_verify_path ( struct dasd_device ,
__u8   
)

Definition at line 3294 of file dasd.c.

int dasd_get_feature ( struct ccw_device ,
int   
)

Definition at line 1334 of file dasd_devmap.c.

char* dasd_get_sense ( struct irb )

Definition at line 3464 of file dasd.c.

char* dasd_get_user_string ( const char __user ,
size_t   
)
void dasd_global_profile_reset ( void  )
int dasd_ioctl ( struct block_device ,
fmode_t  ,
unsigned  int,
unsigned  long 
)

Definition at line 433 of file dasd_ioctl.c.

void dasd_kfree_request ( struct dasd_ccw_req ,
struct dasd_device  
)

Definition at line 1274 of file dasd.c.

void dasd_kick_device ( struct dasd_device )

Definition at line 560 of file dasd.c.

struct dasd_ccw_req* dasd_kmalloc_request ( int  ,
int  ,
int  ,
struct dasd_device  
)
read

Definition at line 1193 of file dasd.c.

void dasd_log_sense ( struct dasd_ccw_req ,
struct irb  
)

Definition at line 157 of file dasd_erp.c.

void dasd_log_sense_dbf ( struct dasd_ccw_req cqr,
struct irb irb 
)

Definition at line 168 of file dasd_erp.c.

int dasd_parse ( void  )

Definition at line 375 of file dasd_devmap.c.

void dasd_proc_exit ( void  )

Definition at line 371 of file dasd_proc.c.

int dasd_proc_init ( void  )

Definition at line 343 of file dasd_proc.c.

void dasd_profile_off ( struct dasd_profile )
int dasd_profile_on ( struct dasd_profile )

Definition at line 1179 of file dasd.c.

void dasd_profile_reset ( struct dasd_profile )
void dasd_put_device_wake ( struct dasd_device )

Definition at line 639 of file dasd_devmap.c.

void dasd_reload_device ( struct dasd_device )

Definition at line 579 of file dasd.c.

void dasd_remove_sysfs_files ( struct ccw_device )

Definition at line 1377 of file dasd_devmap.c.

void dasd_restore_device ( struct dasd_device )

Definition at line 599 of file dasd.c.

int dasd_scan_partitions ( struct dasd_block )

Definition at line 100 of file dasd_genhd.c.

void dasd_schedule_block_bh ( struct dasd_block )

Definition at line 2708 of file dasd.c.

void dasd_schedule_device_bh ( struct dasd_device )

Definition at line 2005 of file dasd.c.

int dasd_set_feature ( struct ccw_device ,
int  ,
int   
)

Definition at line 1350 of file dasd_devmap.c.

void dasd_set_target_state ( struct dasd_device ,
int   
)

Definition at line 609 of file dasd.c.

void dasd_sfree_request ( struct dasd_ccw_req ,
struct dasd_device  
)

Definition at line 1291 of file dasd.c.

int dasd_sleep_on ( struct dasd_ccw_req )

Definition at line 2213 of file dasd.c.

int dasd_sleep_on_immediatly ( struct dasd_ccw_req )

Definition at line 2252 of file dasd.c.

int dasd_sleep_on_interruptible ( struct dasd_ccw_req )

Definition at line 2222 of file dasd.c.

struct dasd_ccw_req* dasd_smalloc_request ( int  ,
int  ,
int  ,
struct dasd_device  
)
read

Definition at line 1230 of file dasd.c.

int dasd_start_IO ( struct dasd_ccw_req )

Definition at line 1382 of file dasd.c.

int dasd_term_IO ( struct dasd_ccw_req )

Definition at line 1328 of file dasd.c.

void dasd_wakeup_cb ( struct dasd_ccw_req ,
void  
)

Definition at line 2067 of file dasd.c.

Variable Documentation

int dasd_autodetect

Definition at line 68 of file dasd_devmap.c.

debug_info_t* dasd_debug_area

Definition at line 47 of file dasd.c.

struct block_device_operations dasd_device_operations

Definition at line 2911 of file dasd.c.

struct dasd_discipline* dasd_diag_discipline_pointer

Definition at line 49 of file dasd.c.

struct dasd_profile_info dasd_global_profile_data
unsigned int dasd_global_profile_level

Definition at line 653 of file dasd.c.

int dasd_max_devindex

Definition at line 91 of file dasd_devmap.c.

int dasd_nofcx

Definition at line 71 of file dasd_devmap.c.

int dasd_nopav

Definition at line 69 of file dasd_devmap.c.

struct kmem_cache* dasd_page_cache

Definition at line 32 of file dasd_devmap.c.

int dasd_probeonly

Definition at line 67 of file dasd_devmap.c.

Definition at line 542 of file dasd_int.h.

unsigned long size

Definition at line 543 of file dasd_int.h.