当前位置: 首页 > news >正文

网站开发 需求说明书网页版qq怎么登录

网站开发 需求说明书,网页版qq怎么登录,steam交易链接在哪里看,网站建设意识形态工作在阅读和编写内核相关的代码时#xff0c;经常会看到IS_ERR、ERR_PTR等函数。这些函数在内核头文件的err.h中。以我服务器的代码为例#xff0c;内核版本为5.15。 这个文件的代码如下#xff1a; /* SPDX-License-Identifier: GPL-2.0 */ #ifndef _LINUX_ERR_H #define _L…在阅读和编写内核相关的代码时经常会看到IS_ERR、ERR_PTR等函数。这些函数在内核头文件的err.h中。以我服务器的代码为例内核版本为5.15。 这个文件的代码如下 /* SPDX-License-Identifier: GPL-2.0 */ #ifndef _LINUX_ERR_H #define _LINUX_ERR_H#include linux/compiler.h #include linux/types.h#include asm/errno.h/** Kernel pointers have redundant information, so we can use a* scheme where we can return either an error code or a normal* pointer with the same return value.** This should be a per-architecture thing, to allow different* error and pointer decisions.*/ #define MAX_ERRNO 4095#ifndef __ASSEMBLY__#define IS_ERR_VALUE(x) unlikely((unsigned long)(void *)(x) (unsigned long)-MAX_ERRNO)static inline void * __must_check ERR_PTR(long error) {return (void *) error; }static inline long __must_check PTR_ERR(__force const void *ptr) {return (long) ptr; }static inline bool __must_check IS_ERR(__force const void *ptr) {return IS_ERR_VALUE((unsigned long)ptr); }static inline bool __must_check IS_ERR_OR_NULL(__force const void *ptr) {return unlikely(!ptr) || IS_ERR_VALUE((unsigned long)ptr); }/*** ERR_CAST - Explicitly cast an error-valued pointer to another pointer type* ptr: The pointer to cast.** Explicitly cast an error-valued pointer to another pointer type in such a* way as to make it clear thats whats going on.*/ static inline void * __must_check ERR_CAST(__force const void *ptr) {/* cast away the const */return (void *) ptr; }static inline int __must_check PTR_ERR_OR_ZERO(__force const void *ptr) {if (IS_ERR(ptr))return PTR_ERR(ptr);elsereturn 0; }#endif#endif /* _LINUX_ERR_H */ 这个文件提供了一套用于处理错误指针的宏和函数。主要部分的解释 #define MAX_ERRNO 4095定义了最大的错误号为4095。 #define IS_ERR_VALUE(x) unlikely((unsigned long)(void *)(x) (unsigned long)-MAX_ERRNO)定义了一个宏用于检查一个值是否在错误号的范围内。 ERR_PTR(long error)这个函数将一个错误号转换为一个错误指针这样就可以将错误信息通过指针返回。 PTR_ERR(const void *ptr)这个函数将一个错误指针转换回对应的错误号。 IS_ERR(const void *ptr)这个函数检查一个指针是否是错误指针。 IS_ERR_OR_NULL(const void *ptr)这个函数检查一个指针是否是错误指针或者NULL指针。 ERR_CAST(const void *ptr)这个函数将一个错误指针强制转换为另一种类型的指针。 PTR_ERR_OR_ZERO(const void *ptr)这个函数检查一个指针如果它是错误指针就返回对应的错误号否则返回0。 这些函数和宏提供了一种机制使得函数可以通过返回指针的方式来返回错误信息。 错误号的部分信息在文件errno.h中 代码如下 /* SPDX-License-Identifier: GPL-2.0 */ #ifndef _LINUX_ERRNO_H #define _LINUX_ERRNO_H#include uapi/linux/errno.h/** These should never be seen by user programs. To return one of ERESTART** codes, signal_pending() MUST be set. Note that ptrace can observe these* at syscall exit tracing, but they will never be left for the debugged user* process to see.*/ #define ERESTARTSYS 512 #define ERESTARTNOINTR 513 #define ERESTARTNOHAND 514 /* restart if no handler.. */ #define ENOIOCTLCMD 515 /* No ioctl command */ #define ERESTART_RESTARTBLOCK 516 /* restart by calling sys_restart_syscall */ #define EPROBE_DEFER 517 /* Driver requests probe retry */ #define EOPENSTALE 518 /* open found a stale dentry */ #define ENOPARAM 519 /* Parameter not supported *//* Defined for the NFSv3 protocol */ #define EBADHANDLE 521 /* Illegal NFS file handle */ #define ENOTSYNC 522 /* Update synchronization mismatch */ #define EBADCOOKIE 523 /* Cookie is stale */ #define ENOTSUPP 524 /* Operation is not supported */ #define ETOOSMALL 525 /* Buffer or request is too small */ #define ESERVERFAULT 526 /* An untranslatable error occurred */ #define EBADTYPE 527 /* Type not supported by server */ #define EJUKEBOX 528 /* Request initiated, but will not complete before timeout */ #define EIOCBQUEUED 529 /* iocb queued, will get completion event */ #define ERECALLCONFLICT 530 /* conflict with recalled state */ #define ENOGRACE 531 /* NFS file lock reclaim refused */#endif 错误号的部分解释如下 ERESTARTSYS (512)系统调用由于接收到一个可以被处理的信号而被中断需要被重新启动。 ERESTARTNOINTR (513)系统调用由于某些原因被中断需要被重新启动但是不需要检查未决的信号。 ERESTARTNOHAND (514)系统调用由于接收到一个不能被当前进程处理的信号而被中断需要被重新启动。 ENOIOCTLCMD (515)没有找到对应的ioctl命令。 ERESTART_RESTARTBLOCK (516)系统调用需要被重新启动但是使用了不同的方法。 EPROBE_DEFER (517)设备驱动程序请求延迟探测。 EOPENSTALE (518)打开操作找到了一个过时的目录项。 ENOPARAM (519)不支持的参数。 EBADHANDLE (521)NFS协议中的非法文件句柄。 ENOTSYNC (522)更新同步不匹配。 EBADCOOKIE (523)Cookie过期。 ENOTSUPP (524)不支持的操作。 ETOOSMALL (525)缓冲区或请求太小。 ESERVERFAULT (526)发生了无法翻译的错误。 EBADTYPE (527)服务器不支持的类型。 EJUKEBOX (528)请求已经启动但在超时前不会完成。 EIOCBQUEUED (529)iocb已经入队将会收到完成事件。 ERECALLCONFLICT (530)与被召回的状态冲突。 ENOGRACE (531)NFS文件锁恢复被拒绝。
http://www.dnsts.com.cn/news/105790.html

相关文章:

  • 下载jsp网站开发用啥工具做网站一定需要主机吗
  • 免费网站建设seo酒店设计公司排名
  • 昆山网站建网站 企汇网
  • 厦门模板建站系统软件首页设计
  • 如何制作可以下单的网站辽阳专业建设网站公司电话号码
  • 遵义制作公司网站的公司惠州市seo上词
  • 呼伦贝尔北京网站建设高端设计图网站
  • 西安火车站建设吉林网站建设
  • 建设外贸购物网站安卓开发者平台
  • 白云手机网站建设江苏常州建设银行网站
  • 深圳网站设计公司排行wordpress 钩子列表
  • 青岛网站建设电话荷城网站制作公司
  • 广州个人做网站小程序商城开发公司哪个好
  • 东莞最好的网络公司找火速网络优化推广公司
  • 网站内页做友情链接买卖交易平台
  • 国外网站制作电影网站建设费用
  • 可以做渗透的网站网站建设 我们是专业的
  • 网站建设的维护工作如何把做的网站放到百度上
  • 网站开发的项目背景中国优秀网页设计
  • 德惠市城乡建设局网站《小城镇建设》》杂志社网站
  • 网站的优化公司wordpress 大网站
  • 苏州在线网站制作住房城乡建设厅网站准考证
  • 桂林建网站石家庄市建设工程信息网
  • 网站制作时如何分析竞争对手网站 not found
  • 做网站需要专业企业网站建设方法
  • 网站开发 免代码奉贤品牌网站建设
  • 网站管理员权限怎么设置成都网站建设公司电话
  • 做企业网的公司沈阳网站优化
  • 公网ip做网站访问不...课程网站建设简介
  • 贵州易广建设集团网站响应式网站设计规则