pmcraid_check_ioctl_buffer(9)
π pmcraid_check_ioctl_buffer β the vibe check for user buffers
okay so this is a page from the Kernel API Manual, and it's all about pmcraid_check_ioctl_buffer(9) β yes bestie, that whole mouthful is the function name. It's the little bouncer at the door that checks whether we're even allowed to touch the user's buffer. π«Ά
β¨ SYNOPSIS β¨
int pmcraid_check_ioctl_buffer (int cmd , void __user *arg , struct
pmcraid_ioctl_header *hdr );
like, that's the whole signature, copied exactly, no cap π
πΈ ARGUMENTS πΈ
cmdβ the ioctl command. the actual instruction, the "what are we even doing here" of it all π«argβ the user buffer. yep, the buffer that lives in userland πhdrβ pointer to kernel memory forstruct pmcraid_ioctl_header. this is where the header's gonna land π
π DESCRIPTION π
Return value: a negative error code if there are access issues π β like, if something went wrong with permissions/access, you get a negative number back, that's the heads-up.
Otherwise? zero. iconic. zero means we're good β¨
Upon success, it returns the ioctl header copied out of the user buffer β so hdr gets filled with the header that came from the user's buffer. literally the main character of this whole function π
lowkey the whole point: access check first, then the header copy falls out on success. no cap, that's it.
π¦ SEE ALSO π¦
fr fr bestie, the related-stuff list here is long, so buckle up β every single one, exactly as written, in order π
Kernel file ./drivers/scsi/pmcraid.c
pmcraid_sdev_init(9)pmcraid_sdev_configure(9)pmcraid_sdev_destroy(9)pmcraid_change_queue_depth(9)pmcraid_init_cmdblk(9)pmcraid_reinit_cmdblk(9)pmcraid_get_free_cmd(9)pmcraid_return_cmd(9)pmcraid_read_interrupts(9)pmcraid_disable_interrupts(9)pmcraid_enable_interrupts(9)pmcraid_clr_trans_op(9)pmcraid_reset_type(9)pmcraid_bist_done(9)pmcraid_start_bist(9)pmcraid_reset_alert_done(9)pmcraid_reset_alert(9)pmcraid_timeout_handler(9)pmcraid_internal_done(9)pmcraid_reinit_cfgtable_done(9)pmcraid_erp_done(9)_pmcraid_fire_command(9)pmcraid_send_cmd(9)pmcraid_ioa_shutdown_done(9)pmcraid_ioa_shutdown(9)pmcraid_get_fwversion_done(9)pmcraid_get_fwversion(9)pmcraid_identify_hrrq(9)pmcraid_send_hcam_cmd(9)pmcraid_init_hcam(9)pmcraid_send_hcam(9)pmcraid_prepare_cancel_cmd(9)pmcraid_cancel_hcam(9)pmcraid_cancel_ccn(9)pmcraid_cancel_ldn(9)pmcraid_expose_resource(9)pmcraid_netlink_init(9)pmcraid_netlink_release(9)pmcraid_notify_ccn(9)pmcraid_notify_ldn(9)pmcraid_notify_ioastate(9)pmcraid_handle_config_change(9)pmcraid_get_error_info(9)pmcraid_ioasc_logger(9)pmcraid_handle_error_log(9)pmcraid_process_ccn(9)pmcraid_process_ldn(9)pmcraid_register_hcams(9)pmcraid_unregister_hcams(9)pmcraid_reset_enable_ioa(9)pmcraid_soft_reset(9)pmcraid_get_dump(9)pmcraid_fail_outstanding_cmds(9)pmcraid_ioa_reset(9)pmcraid_initiate_reset(9)pmcraid_reset_reload(9)pmcraid_reset_bringdown(9)pmcraid_reset_bringup(9)pmcraid_request_sense(9)pmcraid_cancel_all(9)pmcraid_frame_auto_sense(9)pmcraid_error_handler(9)pmcraid_reset_device(9)_pmcraid_io_done(9)pmcraid_io_done(9)pmcraid_abort_cmd(9)pmcraid_abort_complete(9)pmcraid_eh_abort_handler(9)pmcraid_eh_device_reset_handler(9)pmcraid_eh_host_reset_handler(9)pmcraid_init_ioadls(9)pmcraid_build_ioadl(9)pmcraid_queuecommand_lck(9)pmcraid_ioctl_driver(9)pmcraid_show_log_level(9)pmcraid_store_log_level(9)pmcraid_show_drv_version(9)pmcraid_show_adapter_id(9)pmcraid_isr(9)pmcraid_worker_function(9)pmcraid_tasklet_function(9)pmcraid_unregister_interrupt_handler(9)pmcraid_register_interrupt_handler(9)pmcraid_release_cmd_blocks(9)pmcraid_release_control_blocks(9)pmcraid_allocate_cmd_blocks(9)pmcraid_allocate_control_blocks(9)pmcraid_release_host_rrqs(9)pmcraid_allocate_host_rrqs(9)pmcraid_release_hcams(9)pmcraid_allocate_hcams(9)pmcraid_release_config_buffers(9)pmcraid_allocate_config_buffers(9)pmcraid_init_tasklets(9)pmcraid_kill_tasklets(9)pmcraid_release_buffers(9)pmcraid_init_buffers(9)pmcraid_reinit_buffers(9)pmcraid_init_instance(9)pmcraid_shutdown(9)pmcraid_setup_chrdev(9)pmcraid_release_chrdev(9)pmcraid_remove(9)pmcraid_suspend(9)pmcraid_resume(9)pmcraid_complete_ioa_reset(9)pmcraid_set_supported_devs(9)pmcraid_set_timestamp(9)pmcraid_init_res_table(9)pmcraid_querycfg(9)pmcraid_probe(9)pmcraid_init(9)pmcraid_exit(9)
and that's the whole page, bestie π this one shipped out of ./drivers/scsi in October 2026 β Kernel API Manual energy only, mwah π§β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms